<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>Kinetis Bootloader Host: EncoreBootImage.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="nxp_logo_small.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Kinetis Bootloader Host
   &#160;<span id="projectnumber">2.0.0</span>
   </div>
   <div id="projectbrief">Host Tools for Kinetis devices</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Introduction</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('_encore_boot_image_8h_source.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">EncoreBootImage.h</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> * File:    EncoreBootImage.h</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * Copyright (c) Freescale Semiconductor, Inc. All rights reserved.</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * See included license file for license details.</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="preprocessor">#if !defined(_EncoreBootImage_h_)</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="preprocessor">#define _EncoreBootImage_h_</span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;</div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="preprocessor">#include &lt;iostream&gt;</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor">#include &quot;BootImage.h&quot;</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="preprocessor">#include &quot;rijndael.h&quot;</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="preprocessor">#include &quot;smart_ptr.h&quot;</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#include &quot;AESKey.h&quot;</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor">#include &quot;StExecutableImage.h&quot;</span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceelftosb.html">elftosb</a></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;{</div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="keyword">typedef</span> uint8_t cipher_block_t[16];</div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="keyword">typedef</span> uint8_t sha1_digest_t[20];</div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="keyword">typedef</span> uint32_t section_id_t;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">size_t</span> sizeOfCipherBlocks(<span class="keywordtype">unsigned</span> count)</div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(cipher_block_t) * count;</div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;}</div><div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">size_t</span> numberOfCipherBlocks(<span class="keywordtype">size_t</span> s)</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;    <span class="keywordflow">return</span> (s + <span class="keyword">sizeof</span>(cipher_block_t) - 1) / <span class="keyword">sizeof</span>(cipher_block_t);</div><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;}</div><div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">size_t</span> sizeInCipherBlocks(<span class="keywordtype">size_t</span> s)</div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;{</div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;    <span class="keywordflow">return</span> (<span class="keywordtype">unsigned</span>)sizeOfCipherBlocks(numberOfCipherBlocks(s));</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;}</div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;<span class="keyword">inline</span> <span class="keywordtype">size_t</span> sizeOfPaddingForCipherBlocks(<span class="keywordtype">size_t</span> s)</div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;{</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <span class="keywordflow">return</span> sizeInCipherBlocks(s) - s;</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;}</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;</div><div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  101</a></span>&#160;<span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image.html">EncoreBootImage</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_boot_image.html">BootImage</a></div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;{</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;    {</div><div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a322b233cfa40e2e7f074d006ef2d83a3ae65e961fe221cf36b45883b9d58aa80f">  107</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a322b233cfa40e2e7f074d006ef2d83a3ae65e961fe221cf36b45883b9d58aa80f">ROM_DISPLAY_PROGRESS</a> = (1 &lt;&lt; 0), </div><div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a322b233cfa40e2e7f074d006ef2d83a3a35a8c8a5b113b3320c2405026d77d534">  108</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a322b233cfa40e2e7f074d006ef2d83a3a35a8c8a5b113b3320c2405026d77d534">ROM_VERBOSE_PROGRESS</a> = (1 &lt;&lt; 1)  </div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;    };</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;    {</div><div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da8b26ac6aadd820c16038228cae672974">  113</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da8b26ac6aadd820c16038228cae672974">ROM_IMAGE_HEADER_SIGNATURE</a> =</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;            <span class="stringliteral">&#39;STMP&#39;</span>, </div><div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699daf6e8d5cc87e761073ba57f223473dc95">  115</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699daf6e8d5cc87e761073ba57f223473dc95">ROM_IMAGE_HEADER_SIGNATURE2</a> =</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;            <span class="stringliteral">&#39;sgtl&#39;</span>,                       </div><div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da3d2e6182924fe2b2e3abc6c95a94afd4">  117</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da3d2e6182924fe2b2e3abc6c95a94afd4">ROM_BOOT_IMAGE_MAJOR_VERSION</a> = 1, </div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da91f94b3db205d7c04eface71df2bf05a">  118</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da91f94b3db205d7c04eface71df2bf05a">ROM_BOOT_IMAGE_MINOR_VERSION</a> = 2  </div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    };</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    {</div><div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a8cae9f81a039661c829ca51d954e3560ac6848708150e43ac9a8302b8a00dcc1f">  124</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a8cae9f81a039661c829ca51d954e3560ac6848708150e43ac9a8302b8a00dcc1f">BOOT_IMAGE_MINIMUM_SECTION_ALIGNMENT</a> = <span class="keyword">sizeof</span>(cipher_block_t)</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    };</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;<span class="comment">// All of these structures are packed to byte alignment in order to match</span></div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;<span class="comment">// the structure on disk.</span></div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;<span class="preprocessor">#pragma pack(1)</span></div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;</div><div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  150</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__image__header__t">boot_image_header_t</a></div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    {</div><div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  152</a></span>&#160;        <span class="keyword">union</span></div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;        {</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;            sha1_digest_t m_digest; </div><div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  155</a></span>&#160;            <span class="keyword">struct</span></div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;            {</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;                cipher_block_t m_iv; </div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;                uint8_t m_extra[4];  </div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;            };</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;        };</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a078eb86031a0a1e656abcf4a11d792a5">  161</a></span>&#160;        uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a078eb86031a0a1e656abcf4a11d792a5">m_signature</a>[4];       </div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aa8af7e564a506946f547b62fb5cd7f18">  162</a></span>&#160;        uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#aa8af7e564a506946f547b62fb5cd7f18">m_majorVersion</a>;       </div><div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a7e4ca380d4cca06b5f8a329124acdadd">  163</a></span>&#160;        uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a7e4ca380d4cca06b5f8a329124acdadd">m_minorVersion</a>;       </div><div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ade1b69371717ca2cb04fc525eadec849">  164</a></span>&#160;        uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#ade1b69371717ca2cb04fc525eadec849">m_flags</a>;             </div><div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a0a63d907779378372cc48443d0263711">  165</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0a63d907779378372cc48443d0263711">m_imageBlocks</a>;       </div><div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a31105ca4227cb4af2d856acc4ef128eb">  166</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a31105ca4227cb4af2d856acc4ef128eb">m_firstBootTagBlock</a>; </div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ab8298bb404949aca90edd839b690337a">  167</a></span>&#160;        section_id_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab8298bb404949aca90edd839b690337a">m_firstBootableSectionID</a>; </div><div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#acdca7fd3840a90881556c6adbe74965a">  168</a></span>&#160;        uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#acdca7fd3840a90881556c6adbe74965a">m_keyCount</a>;                   </div><div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a752397a43efb165be2a01a4160c1d63a">  169</a></span>&#160;        uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a752397a43efb165be2a01a4160c1d63a">m_keyDictionaryBlock</a>;         </div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ac74a1d4c2ab0ff4f659cad67d4a703e8">  170</a></span>&#160;        uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#ac74a1d4c2ab0ff4f659cad67d4a703e8">m_headerBlocks</a>;               </div><div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a23f1ea8999c4485f5922f78aa5ea99f9">  171</a></span>&#160;        uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a23f1ea8999c4485f5922f78aa5ea99f9">m_sectionCount</a>;               </div><div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a4e761570f44928f4e9917c05765bbb48">  172</a></span>&#160;        uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a4e761570f44928f4e9917c05765bbb48">m_sectionHeaderSize</a>;          </div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a8adbd92461de5570ce43a8ae7fb35dfd">  173</a></span>&#160;        uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a8adbd92461de5570ce43a8ae7fb35dfd">m_padding0</a>[2];                 </div><div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aee40ec0ce2885c29f7fbc8f17d1e51ca">  174</a></span>&#160;        uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#aee40ec0ce2885c29f7fbc8f17d1e51ca">m_signature2</a>[4];      </div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        uint64_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a586a13047317d32a4e6b4f3f8bd49a88">m_timestamp</a>;         </div><div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a44933f9601e8eef2a81c3e2e751dcf49">  177</a></span>&#160;        <a class="code" href="structelftosb_1_1version__t.html">version_t</a> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a44933f9601e8eef2a81c3e2e751dcf49">m_productVersion</a>;   </div><div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ad9d8268d81aeaaf20b1640217554c968">  178</a></span>&#160;        <a class="code" href="structelftosb_1_1version__t.html">version_t</a> <a class="code" href="classelftosb_1_1_encore_boot_image.html#ad9d8268d81aeaaf20b1640217554c968">m_componentVersion</a>; </div><div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ab6de9b0a7b19ab575dc69e6a1c841a08">  179</a></span>&#160;        uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab6de9b0a7b19ab575dc69e6a1c841a08">m_driveTag</a>;          </div><div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aecf35ebe852abbe2d7213e24ceb9ccdd">  180</a></span>&#160;        uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#aecf35ebe852abbe2d7213e24ceb9ccdd">m_padding1</a>[6];        </div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;    };</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;</div><div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  187</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1dek__dictionary__entry__t">dek_dictionary_entry_t</a></div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;    {</div><div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a7e56c9f17b7334a29159ed999894db0d">  189</a></span>&#160;        cipher_block_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a7e56c9f17b7334a29159ed999894db0d">m_mac</a>; </div><div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aa5100e9e32b54d3e0e5db28fa239b648">  190</a></span>&#160;        aes128_key_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#aa5100e9e32b54d3e0e5db28fa239b648">m_dek</a>;   </div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;    };</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  194</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1dek__dictionary__t">dek_dictionary_t</a></div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;    {</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1dek__dictionary__entry__t">dek_dictionary_entry_t</a> m_entries[1];</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    };</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;    {</div><div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a94aa6b74f170c47cae4cf0b3b9c81994">  202</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a94aa6b74f170c47cae4cf0b3b9c81994">ROM_SECTION_BOOTABLE</a> = (1 &lt;&lt; 0), </div><div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a576b9de05acd56d12c6171b0ad67353f">  203</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a576b9de05acd56d12c6171b0ad67353f">ROM_SECTION_CLEARTEXT</a> =</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;            (1 &lt;&lt; 1) </div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;    };</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;</div><div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  209</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1section__header__t">section_header_t</a></div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    {</div><div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a2bd5150364ac9ca9544a084d6fc9e5cd">  211</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a2bd5150364ac9ca9544a084d6fc9e5cd">m_tag</a>;    </div><div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ac62ee84484f039c11796bb90f49f4c61">  212</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#ac62ee84484f039c11796bb90f49f4c61">m_offset</a>; </div><div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ab1f2fe1d089e0f9c03a0d171288dd82b">  213</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab1f2fe1d089e0f9c03a0d171288dd82b">m_length</a>; </div><div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a43422e088692b0eccc8922873724d03a">  214</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a43422e088692b0eccc8922873724d03a">m_flags</a>;  </div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;    };</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  235</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1section__table__t">section_table_t</a></div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;    {</div><div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#afcc9bfe2d308c16215d7c60633c07735">  237</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1section__header__t">section_header_t</a> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc">m_sections</a>[1]; </div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;    };</div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div><div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html">  249</a></span>&#160;    <span class="keyword">struct </span><a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a></div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;    {</div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#affb0bf335a8451706293d94b51946e11">  251</a></span>&#160;        uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#affb0bf335a8451706293d94b51946e11">m_checksum</a>; </div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a03fedc91e72a5de33eb085fcf9633355">  252</a></span>&#160;        uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a03fedc91e72a5de33eb085fcf9633355">m_tag</a>;      </div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a1f1e506925fb4e1b56a921b8681dcdfc">  253</a></span>&#160;        uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a1f1e506925fb4e1b56a921b8681dcdfc">m_flags</a>;   </div><div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaa162711561c4bf4bfa339ecc5f51cdd">  254</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaa162711561c4bf4bfa339ecc5f51cdd">m_address</a>; </div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a050eb0cc46b5e1020023f6ee29dd4f36">  255</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a050eb0cc46b5e1020023f6ee29dd4f36">m_count</a>;   </div><div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aa48307f8a58d0d01b1fb7dbfbcc38ace">  256</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#aa48307f8a58d0d01b1fb7dbfbcc38ace">m_data</a>;    </div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    };</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor">#pragma pack()</span></div><div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    {</div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea3dbce29fdf6055d2f3e21e9360ab921c">  264</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea3dbce29fdf6055d2f3e21e9360ab921c">ROM_NOP_CMD</a> = 0x00,        </div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea360fe5535a567967683170c50d7411a7">  265</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea360fe5535a567967683170c50d7411a7">ROM_TAG_CMD</a> = 0x01,        </div><div class="line"><a name="l00266"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea482ff1ec8ceb69c4d6e7ba8e2944dea1">  266</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea482ff1ec8ceb69c4d6e7ba8e2944dea1">ROM_LOAD_CMD</a> = 0x02,       </div><div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea41cf0dfec1eea6f229d3eb2163ab3404">  267</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea41cf0dfec1eea6f229d3eb2163ab3404">ROM_FILL_CMD</a> = 0x03,       </div><div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddeaa530f91c73779b2c26dda739b9ea157d">  268</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddeaa530f91c73779b2c26dda739b9ea157d">ROM_JUMP_CMD</a> = 0x04,       </div><div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddeadf5042cf30c7a189ca9e435cf55e07ce">  269</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddeadf5042cf30c7a189ca9e435cf55e07ce">ROM_CALL_CMD</a> = 0x05,       </div><div class="line"><a name="l00270"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea4123c44ce1b76a8b2b4897e212f462b8">  270</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea4123c44ce1b76a8b2b4897e212f462b8">ROM_MODE_CMD</a> = 0x06,       </div><div class="line"><a name="l00271"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddead0f7be982547d05640e7b9c02ecd6f8d">  271</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddead0f7be982547d05640e7b9c02ecd6f8d">ROM_ERASE_CMD</a> = 0x07,      </div><div class="line"><a name="l00272"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea32b7c944cb953f24f6998ad5eb9f835d">  272</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea32b7c944cb953f24f6998ad5eb9f835d">ROM_RESET_CMD</a> = 0x08,      </div><div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea231273ec046a1a6c72b79e9211ada60c">  273</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea231273ec046a1a6c72b79e9211ada60c">ROM_MEM_ENABLE_CMD</a> = 0x09, </div><div class="line"><a name="l00274"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddead71bc49b8e71814f167d2f8d268d546d">  274</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddead71bc49b8e71814f167d2f8d268d546d">ROM_PROG_CMD</a> = 0x0a        </div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;    };</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;    {</div><div class="line"><a name="l00280"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ac9bb85f37a25381b15a7e450921e38b8ad76d5ef3c054c23e02c62767d64d2591">  280</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#ac9bb85f37a25381b15a7e450921e38b8ad76d5ef3c054c23e02c62767d64d2591">ROM_LAST_TAG</a> = (1 &lt;&lt; 0) </div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;    };</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;    {</div><div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#afb96656be23af34be4b39d8180896933ab977279a608b195d009d18365cae1b6f">  286</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#afb96656be23af34be4b39d8180896933ab977279a608b195d009d18365cae1b6f">ROM_LOAD_DCD</a> = (1 &lt;&lt; 0) </div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;    };</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;    {</div><div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a9511d4af09fd50de5e8a2e50e72f8908">  292</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a9511d4af09fd50de5e8a2e50e72f8908">ROM_FILL_BYTE</a> = 0,      </div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a5d37310f36e10837bd53a2cd86a73529">  293</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a5d37310f36e10837bd53a2cd86a73529">ROM_FILL_HALF_WORD</a> = 1, </div><div class="line"><a name="l00294"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a8e10e316e7030ade208692a0589ee1f8">  294</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a8e10e316e7030ade208692a0589ee1f8">ROM_FILL_WORD</a> = 2       </div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    };</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;    {</div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ac899003d6585e7dad5be1d4c0b2fb60eadcaf9e745066f375edab08f4fb5fe93d">  300</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#ac899003d6585e7dad5be1d4c0b2fb60eadcaf9e745066f375edab08f4fb5fe93d">ROM_HAB_EXEC</a> = (1 &lt;&lt; 0),    </div><div class="line"><a name="l00301"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ac899003d6585e7dad5be1d4c0b2fb60ea1ecdb39f167619a04751f3110cb6d52a">  301</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#ac899003d6585e7dad5be1d4c0b2fb60ea1ecdb39f167619a04751f3110cb6d52a">ROM_JUMP_SP_MASK</a> = (1 &lt;&lt; 1) </div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    };</div><div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    {</div><div class="line"><a name="l00307"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a0f837b7d487968fc7a45cd333ad8ddc8ae389e06924f01e12dbd93d2b36a533c3">  307</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0f837b7d487968fc7a45cd333ad8ddc8ae389e06924f01e12dbd93d2b36a533c3">ROM_MEM_CTRL_MASK</a> = 0x0f, </div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a0f837b7d487968fc7a45cd333ad8ddc8afa0a272c210488a4842caca93f3c6a1b">  308</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0f837b7d487968fc7a45cd333ad8ddc8afa0a272c210488a4842caca93f3c6a1b">ROM_MEM_CTRL_SHIFT</a> = 8    </div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    };</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    {</div><div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a62d2bf49ae747642b23e701d3f241573a4f26730cb8c3c5d39acf4c13cd04547f">  314</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a62d2bf49ae747642b23e701d3f241573a4f26730cb8c3c5d39acf4c13cd04547f">ROM_MEM_SPACE_MASK</a> = 0x0f, </div><div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a62d2bf49ae747642b23e701d3f241573a55b9cb661d94d6b6ced61619eb95596d">  315</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a62d2bf49ae747642b23e701d3f241573a55b9cb661d94d6b6ced61619eb95596d">ROM_MEM_SPACE_SHIFT</a> = 8    </div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;    };</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    {</div><div class="line"><a name="l00321"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a1ec985e228a39441dc3f55486ac2b3f3a21317be4b82ca7b7cef1f89ebfc86fc7">  321</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a1ec985e228a39441dc3f55486ac2b3f3a21317be4b82ca7b7cef1f89ebfc86fc7">ROM_ERASE_ALL_MASK</a> = (1 &lt;&lt; 0),          </div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a1ec985e228a39441dc3f55486ac2b3f3ad59b7b1d4bdd58fc343567f53f5785f4">  322</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a1ec985e228a39441dc3f55486ac2b3f3ad59b7b1d4bdd58fc343567f53f5785f4">ROM_ERASE_ALL_UNSECURE_MASK</a> = (1 &lt;&lt; 1), </div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;    };</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    {</div><div class="line"><a name="l00328"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aedbf37ed729ad7f04f5912f7c384923fa0add3d7a4787059d6abc70c5308b7d5b">  328</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#aedbf37ed729ad7f04f5912f7c384923fa0add3d7a4787059d6abc70c5308b7d5b">ROM_PROG_8BYTE_MASK</a> = (1 &lt;&lt; 0) </div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    };</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;    {</div><div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a373ff82c05565768a7d1d14d558d7f3da82f01c806447b217d0947e64ec24db42">  334</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#a373ff82c05565768a7d1d14d558d7f3da82f01c806447b217d0947e64ec24db42">ROM_MEM_ID_QSPI</a> = 1, </div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    };</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;</div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    <span class="keyword">enum</span></div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;    {</div><div class="line"><a name="l00340"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#afdb9845d3378745374aed342cfae479ea7f81de6ac99a5e1ce383d5b8bc96a16e">  340</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html#afdb9845d3378745374aed342cfae479ea7f81de6ac99a5e1ce383d5b8bc96a16e">ROM_MEM_SPACE_IFR</a> = 4, </div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;    };</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    <span class="comment">// Forward declaration.</span></div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a>;</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;</div><div class="line"><a name="l00350"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">  350</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">CipherBlockGenerator</a></div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;    {</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getBlockCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0; }</div><div class="line"><a name="l00376"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a7a0b3fc7d51d41d38b0c30da233b4fa4">  376</a></span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a7a0b3fc7d51d41d38b0c30da233b4fa4">getBlocks</a>(<span class="keywordtype">unsigned</span> offset, <span class="keywordtype">unsigned</span> maxCount, cipher_block_t *data) { <span class="keywordflow">return</span> 0; }</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;</div><div class="line"><a name="l00380"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a80773110e06a465fa8c9184ccf51c06d">  380</a></span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a80773110e06a465fa8c9184ccf51c06d">debugPrint</a>()<span class="keyword"> const </span>{}</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;    };</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">  386</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">CipherBlockGenerator</a></div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    {</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;        <span class="keyword">static</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a> *createFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00394"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#ac20b874eb88952931204d1ea0f98267f">  394</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#ac20b874eb88952931204d1ea0f98267f">BootCommand</a>()</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">CipherBlockGenerator</a>()</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;        {</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;        }</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;</div><div class="line"><a name="l00400"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#ae7d5a2f3eb06e9e5506be3d10b66e2c6">  400</a></span>&#160;        <span class="keyword">virtual</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#ae7d5a2f3eb06e9e5506be3d10b66e2c6">~BootCommand</a>() {}</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed) = 0;</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag() <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;</div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header) = 0;</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;        <span class="keyword">virtual</span> uint8_t calculateChecksum(<span class="keyword">const</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getBlockCount() <span class="keyword">const</span>;</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getBlocks(<span class="keywordtype">unsigned</span> offset, <span class="keywordtype">unsigned</span> maxCount, cipher_block_t *data);</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getDataBlockCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0; }</div><div class="line"><a name="l00459"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#a46b3519a49537325f27f3ec556ed176d">  459</a></span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#a46b3519a49537325f27f3ec556ed176d">getDataBlocks</a>(<span class="keywordtype">unsigned</span> offset, <span class="keywordtype">unsigned</span> maxCount, cipher_block_t *data) { <span class="keywordflow">return</span> 0; }</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;        <span class="keyword">enum</span></div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;        {</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;            CMD_TAG_FIELD = 1,</div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;            CMD_FLAGS_FIELD = 2,</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;            CMD_ADDRESS_FIELD = 4,</div><div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160;            CMD_COUNT_FIELD = 8,</div><div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;            CMD_DATA_FIELD = 16</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;        };</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;        <span class="keywordtype">void</span> validateHeader(<span class="keyword">const</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> *modelHeader, <span class="keyword">const</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> *testHeader, <span class="keywordtype">unsigned</span> whichFields);</div><div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;    };</div><div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_nop_command.html">  480</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_nop_command.html">NopCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;    {</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00484"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_nop_command.html#a7f9734716e07d3ad7da39ca1549c0eb1">  484</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_nop_command.html#a7f9734716e07d3ad7da39ca1549c0eb1">NopCommand</a>()</div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a>()</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;        {</div><div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;        }</div><div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160;</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;</div><div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;</div><div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea3dbce29fdf6055d2f3e21e9360ab921c">ROM_NOP_CMD</a>; }</div><div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160;    };</div><div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;</div><div class="line"><a name="l00507"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html">  507</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html">TagCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;    {</div><div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00511"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#afbb286be897999afd2e4620ddc82059a">  511</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#afbb286be897999afd2e4620ddc82059a">TagCommand</a>()</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a>()</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;        {</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;        }</div><div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;</div><div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html">TagCommand</a>(<span class="keyword">const</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a> &amp;section);</div><div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;</div><div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160;</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea360fe5535a567967683170c50d7411a7">ROM_TAG_CMD</a>; }</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setSectionIdentifier(uint32_t identifier) { m_sectionIdentifier = identifier; }</div><div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setSectionLength(uint32_t length) { m_sectionLength = length; }</div><div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setSectionFlags(uint32_t flags) { m_sectionFlags = flags; }</div><div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setLast(<span class="keywordtype">bool</span> isLast) { m_isLast = isLast; }</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;</div><div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;</div><div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00542"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#a08d9fb7c9a5b9296e164c51d99166e4e">  542</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#a08d9fb7c9a5b9296e164c51d99166e4e">m_sectionIdentifier</a>; </div><div class="line"><a name="l00543"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#adb9194e5e71ef29098a1130c58349e62">  543</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#adb9194e5e71ef29098a1130c58349e62">m_sectionLength</a>;     </div><div class="line"><a name="l00544"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#af50ce48e88062d286de50021558f7456">  544</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#af50ce48e88062d286de50021558f7456">m_sectionFlags</a>;      </div><div class="line"><a name="l00545"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#a7e4e691f65fabd095190404d477af6f5">  545</a></span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#a7e4e691f65fabd095190404d477af6f5">m_isLast</a>;                </div><div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;    };</div><div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;</div><div class="line"><a name="l00551"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html">  551</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html">LoadCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160;    {</div><div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html">LoadCommand</a>();</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html">LoadCommand</a>(uint32_t address, <span class="keyword">const</span> uint8_t *data, uint32_t length);</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;</div><div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160;</div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea482ff1ec8ceb69c4d6e7ba8e2944dea1">ROM_LOAD_CMD</a>; }</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;</div><div class="line"><a name="l00571"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#af455d51ffe43e1427d48e596e02cbbc0">  571</a></span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#af455d51ffe43e1427d48e596e02cbbc0">setDCD</a>(<span class="keywordtype">bool</span> isDCD) { m_loadDCD = isDCD; }</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setLoadAddress(uint32_t address) { m_address = address; }</div><div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;        <span class="keyword">inline</span> uint32_t getLoadAddress()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_address; }</div><div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;</div><div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;</div><div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;        <span class="keywordtype">void</span> setData(<span class="keyword">const</span> uint8_t *data, uint32_t length);</div><div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160;</div><div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;        <span class="keyword">inline</span> uint8_t *getData() { <span class="keywordflow">return</span> m_data; }</div><div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160;        <span class="keyword">inline</span> <span class="keyword">const</span> uint8_t *getData()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_data; }</div><div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;        <span class="keyword">inline</span> uint32_t getLength()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_length; }</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;</div><div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getDataBlockCount() <span class="keyword">const</span>;</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getDataBlocks(<span class="keywordtype">unsigned</span> offset, <span class="keywordtype">unsigned</span> maxCount, cipher_block_t *data);</div><div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;</div><div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;</div><div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00603"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#afd6f7add50215ae533b5e91b2684237d">  603</a></span>&#160;        <a class="code" href="group__smart__pointer.html">smart_array_ptr&lt;uint8_t&gt;</a> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#afd6f7add50215ae533b5e91b2684237d">m_data</a>; </div><div class="line"><a name="l00604"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a43e6cc79a5e12d17ba9cd515633e73f3">  604</a></span>&#160;        uint8_t m_padding[15];           </div><div class="line"><a name="l00605"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#ad459f4aa4005ddf8fc20475f48792bac">  605</a></span>&#160;        <span class="keywordtype">unsigned</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#ad459f4aa4005ddf8fc20475f48792bac">m_padCount</a>;             </div><div class="line"><a name="l00606"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a206b6b3adda12c1ed601d347f3e01fda">  606</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a206b6b3adda12c1ed601d347f3e01fda">m_length</a>;               </div><div class="line"><a name="l00607"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a430d2e2d76b57ea6ae8e2e6807d05702">  607</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a430d2e2d76b57ea6ae8e2e6807d05702">m_address</a>;              </div><div class="line"><a name="l00608"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a31a6ed49c23e5399d7f3693e8e741329">  608</a></span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a31a6ed49c23e5399d7f3693e8e741329">m_loadDCD</a>;                  </div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;        <span class="keywordtype">void</span> fillPadding();</div><div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;        uint32_t calculateCRC() <span class="keyword">const</span>;</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;    };</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;</div><div class="line"><a name="l00617"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html">  617</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html">FillCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;    {</div><div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html">FillCommand</a>();</div><div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;</div><div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea41cf0dfec1eea6f229d3eb2163ab3404">ROM_FILL_CMD</a>; }</div><div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setAddress(uint32_t address) { m_address = address; };</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;        <span class="keyword">inline</span> uint32_t getAddress()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_address; }</div><div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setFillCount(uint32_t count) { m_count = count; }</div><div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;        <span class="keyword">inline</span> uint32_t getFillCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_count; }</div><div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;</div><div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;</div><div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;        <span class="keywordtype">void</span> setPattern(uint8_t pattern);</div><div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;        <span class="keywordtype">void</span> setPattern(uint16_t pattern);</div><div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;        <span class="keywordtype">void</span> setPattern(uint32_t pattern);</div><div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;</div><div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160;        <span class="keyword">inline</span> uint32_t getPattern()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_pattern; }</div><div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;</div><div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;</div><div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00655"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#ac1705dd65bd2028d65803472b5964f18">  655</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#ac1705dd65bd2028d65803472b5964f18">m_address</a>; </div><div class="line"><a name="l00656"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#a73501ba71ef3e30182242d0534910a43">  656</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#a73501ba71ef3e30182242d0534910a43">m_count</a>;   </div><div class="line"><a name="l00657"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#aabc131dad707cd018e30d8a2c0d127c5">  657</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#aabc131dad707cd018e30d8a2c0d127c5">m_pattern</a>; </div><div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;    };</div><div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;</div><div class="line"><a name="l00663"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html">  663</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html">ModeCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00664"></a><span class="lineno">  664</span>&#160;    {</div><div class="line"><a name="l00665"></a><span class="lineno">  665</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00667"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html#a5a595dde0f2e1ebc7a7ca2c3e578a75f">  667</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html#a5a595dde0f2e1ebc7a7ca2c3e578a75f">ModeCommand</a>()</div><div class="line"><a name="l00668"></a><span class="lineno">  668</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a>()</div><div class="line"><a name="l00669"></a><span class="lineno">  669</span>&#160;            , m_mode(0)</div><div class="line"><a name="l00670"></a><span class="lineno">  670</span>&#160;        {</div><div class="line"><a name="l00671"></a><span class="lineno">  671</span>&#160;        }</div><div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;</div><div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;</div><div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;</div><div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea4123c44ce1b76a8b2b4897e212f462b8">ROM_MODE_CMD</a>; }</div><div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;</div><div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;</div><div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setBootMode(uint32_t mode) { m_mode = mode; }</div><div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;        <span class="keyword">inline</span> uint32_t getBootMode()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_mode; }</div><div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;</div><div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;</div><div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00694"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html#ab73af686e9b7abd2f967943b5f0a6e4b">  694</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html#ab73af686e9b7abd2f967943b5f0a6e4b">m_mode</a>; </div><div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;    };</div><div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;</div><div class="line"><a name="l00700"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_erase_command.html">  700</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_erase_command.html">EraseCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;    {</div><div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00704"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_erase_command.html#a96572598dc9a592bda3ea9af5e1eea64">  704</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_erase_command.html#a96572598dc9a592bda3ea9af5e1eea64">EraseCommand</a>()</div><div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a>()</div><div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160;            , m_doEraseAll(false)</div><div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;            , m_doEraseAllUnsecure(false)</div><div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;            , m_startAddress(0)</div><div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160;            , m_byteCount(0)</div><div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;            , m_memoryId(0)</div><div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;        {</div><div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;        }</div><div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;</div><div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;</div><div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;</div><div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddead0f7be982547d05640e7b9c02ecd6f8d">ROM_ERASE_CMD</a>; }</div><div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;</div><div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;</div><div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;        <span class="keywordtype">void</span> setEraseAll(<span class="keywordtype">bool</span> doEraseAll) { m_doEraseAll = doEraseAll; }</div><div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;        <span class="keywordtype">bool</span> getEraseAll()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_doEraseAll; }</div><div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;</div><div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;</div><div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;        <span class="keywordtype">void</span> setEraseAllUnsecure(<span class="keywordtype">bool</span> doEraseAllUnsecure) { m_doEraseAllUnsecure = doEraseAllUnsecure; }</div><div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;        <span class="keywordtype">bool</span> getEraseAllUnsecure()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_doEraseAllUnsecure; }</div><div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;</div><div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;</div><div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;        <span class="keywordtype">void</span> setAddressRange(uint32_t startAddress, uint32_t count);</div><div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;        <span class="keywordtype">void</span> getAddressRange(uint32_t *startAddress, uint32_t *count) <span class="keyword">const</span>;</div><div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;</div><div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;</div><div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;        <span class="keywordtype">void</span> setMemoryId(uint32_t memId) { m_memoryId = memId; }</div><div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;        uint32_t getMemoryId()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_memoryId; }</div><div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;</div><div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;</div><div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;        <span class="keywordtype">bool</span> m_doEraseAll;</div><div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;        <span class="keywordtype">bool</span> m_doEraseAllUnsecure;</div><div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;        uint32_t m_startAddress;</div><div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;        uint32_t m_byteCount;</div><div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;        uint32_t m_memoryId;</div><div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;    };</div><div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;</div><div class="line"><a name="l00763"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html">  763</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html">ProgramCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;    {</div><div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00767"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#afe0cfd759df40b3b6c0c137e780cc30e">  767</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#afe0cfd759df40b3b6c0c137e780cc30e">ProgramCommand</a>()</div><div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a>()</div><div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;            , m_isEightByte(false)</div><div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;            , m_index(0)</div><div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;            , m_dataWord1(0)</div><div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;            , m_dataWord2(0)</div><div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;            , m_memSpace(0)</div><div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;        {</div><div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;        }</div><div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;</div><div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;</div><div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;</div><div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddead71bc49b8e71814f167d2f8d268d546d">ROM_PROG_CMD</a>; }</div><div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;</div><div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;</div><div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;        <span class="keywordtype">void</span> setIsEightByte(<span class="keywordtype">bool</span> doIt) { m_isEightByte = doIt; }</div><div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160;        <span class="keywordtype">bool</span> isEightByte()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_isEightByte; }</div><div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160;</div><div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160;</div><div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;        <span class="keywordtype">void</span> setMemSpace(uint32_t <span class="keywordtype">id</span>) { m_memSpace = id; }</div><div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;        uint32_t getMemSpace()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_memSpace; }</div><div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;</div><div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160;</div><div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;        <span class="keywordtype">void</span> setIndex(uint32_t index) { m_index = index; }</div><div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;        uint32_t getIndex()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_index; }</div><div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;</div><div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;</div><div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;        <span class="keywordtype">void</span> setDataWord1(uint32_t dataWord) { m_dataWord1 = dataWord; }</div><div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;        uint32_t getDataWord1()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_dataWord1; }</div><div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;</div><div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;</div><div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;        <span class="keywordtype">void</span> setDataWord2(uint32_t dataWord) { m_dataWord2 = dataWord; }</div><div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;        uint32_t getDataWord2()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_dataWord2; }</div><div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;</div><div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;</div><div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00822"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#ae420785599af7cb49cb858bdb996440a">  822</a></span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#ae420785599af7cb49cb858bdb996440a">m_isEightByte</a>;   </div><div class="line"><a name="l00823"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a594ebf2cb912f7fa95a177245d33594b">  823</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a594ebf2cb912f7fa95a177245d33594b">m_index</a>;     </div><div class="line"><a name="l00824"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a540e92d895f9a5447cca6ab24fa64ff7">  824</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a540e92d895f9a5447cca6ab24fa64ff7">m_dataWord1</a>; </div><div class="line"><a name="l00825"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a711de4612b1ce599349a565b3a11371a">  825</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a711de4612b1ce599349a565b3a11371a">m_dataWord2</a>; </div><div class="line"><a name="l00826"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a659bc97136ab1e28d5514c5321985676">  826</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a659bc97136ab1e28d5514c5321985676">m_memSpace</a>;  </div><div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;    };</div><div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;</div><div class="line"><a name="l00832"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html">  832</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html">JumpCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;    {</div><div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00836"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#af366b41f556d6b574292563441c7ee70">  836</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#af366b41f556d6b574292563441c7ee70">JumpCommand</a>()</div><div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a>()</div><div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160;            , m_address(0)</div><div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;            , m_argument(0)</div><div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;            , m_isHAB(false)</div><div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;            , m_ivtSize(0)</div><div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160;            , m_stackPointer(0)</div><div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;            , m_isStackPointerSet(false)</div><div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;        {</div><div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;        }</div><div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;</div><div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160;</div><div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;</div><div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddeaa530f91c73779b2c26dda739b9ea157d">ROM_JUMP_CMD</a>; }</div><div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;</div><div class="line"><a name="l00859"></a><span class="lineno">  859</span>&#160;</div><div class="line"><a name="l00860"></a><span class="lineno">  860</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setAddress(uint32_t address) { m_address = address; }</div><div class="line"><a name="l00861"></a><span class="lineno">  861</span>&#160;        <span class="keyword">inline</span> uint32_t getAddress()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_address; }</div><div class="line"><a name="l00862"></a><span class="lineno">  862</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setArgument(uint32_t argument) { m_argument = argument; }</div><div class="line"><a name="l00863"></a><span class="lineno">  863</span>&#160;        <span class="keyword">inline</span> uint32_t getArgument()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_argument; }</div><div class="line"><a name="l00864"></a><span class="lineno">  864</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setIsHAB(<span class="keywordtype">bool</span> isHAB) { m_isHAB = isHAB; }</div><div class="line"><a name="l00865"></a><span class="lineno">  865</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">bool</span> isHAB()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_isHAB; }</div><div class="line"><a name="l00866"></a><span class="lineno">  866</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setIVTSize(uint32_t ivtSize) { m_ivtSize = ivtSize; }</div><div class="line"><a name="l00867"></a><span class="lineno">  867</span>&#160;        <span class="keyword">inline</span> uint32_t getIVTSize()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_ivtSize; }</div><div class="line"><a name="l00868"></a><span class="lineno">  868</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setStackPointer(uint32_t sp) { m_stackPointer = sp; }</div><div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;        <span class="keyword">inline</span> uint32_t getStackPointer() { <span class="keywordflow">return</span> m_stackPointer; }</div><div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setIsStackPointerSet(<span class="keywordtype">bool</span> isSP) { m_isStackPointerSet = isSP; }</div><div class="line"><a name="l00871"></a><span class="lineno">  871</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">bool</span> IsStackPointerSet()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_isStackPointerSet; }</div><div class="line"><a name="l00873"></a><span class="lineno">  873</span>&#160;</div><div class="line"><a name="l00875"></a><span class="lineno">  875</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00876"></a><span class="lineno">  876</span>&#160;</div><div class="line"><a name="l00877"></a><span class="lineno">  877</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00878"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a1c57b8129b2f1fee13e603fe4cedccf0">  878</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a1c57b8129b2f1fee13e603fe4cedccf0">m_address</a>;      </div><div class="line"><a name="l00879"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#ab9c0d8bcb7cce182c9e7b2edeafbc188">  879</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#ab9c0d8bcb7cce182c9e7b2edeafbc188">m_argument</a>;     </div><div class="line"><a name="l00880"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#ae7428e27068f083f0381f961413ddd09">  880</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#ae7428e27068f083f0381f961413ddd09">m_stackPointer</a>; </div><div class="line"><a name="l00881"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a42c31351f5eb7195dda41e8ab1f874a2">  881</a></span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a42c31351f5eb7195dda41e8ab1f874a2">m_isHAB</a>; </div><div class="line"><a name="l00882"></a><span class="lineno">  882</span>&#160;        <span class="keywordtype">bool</span> m_isStackPointerSet; </div><div class="line"><a name="l00884"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a8cf8755af3ae9d09a7124b66e0b052ed">  884</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a8cf8755af3ae9d09a7124b66e0b052ed">m_ivtSize</a>;       </div><div class="line"><a name="l00885"></a><span class="lineno">  885</span>&#160;    };</div><div class="line"><a name="l00886"></a><span class="lineno">  886</span>&#160;</div><div class="line"><a name="l00890"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_call_command.html">  890</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_call_command.html">CallCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html">JumpCommand</a></div><div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;    {</div><div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00894"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_call_command.html#a3b487e8447d34c13be5305044c1eb735">  894</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_call_command.html#a3b487e8447d34c13be5305044c1eb735">CallCommand</a>()</div><div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html">JumpCommand</a>()</div><div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160;        {</div><div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;        }</div><div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160;</div><div class="line"><a name="l00900"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_call_command.html#ae6d8904db6b186435c5c35f6380ed85e">  900</a></span>&#160;        <span class="keyword">virtual</span> uint8_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_call_command.html#ae6d8904db6b186435c5c35f6380ed85e">getTag</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddeadf5042cf30c7a189ca9e435cf55e07ce">ROM_CALL_CMD</a>; }</div><div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;    };</div><div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;</div><div class="line"><a name="l00908"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_reset_command.html">  908</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_reset_command.html">ResetCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00909"></a><span class="lineno">  909</span>&#160;    {</div><div class="line"><a name="l00910"></a><span class="lineno">  910</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00912"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_reset_command.html#a6980625e2a92ebefe914e90e9bd0f594">  912</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_reset_command.html#a6980625e2a92ebefe914e90e9bd0f594">ResetCommand</a>()</div><div class="line"><a name="l00913"></a><span class="lineno">  913</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a>()</div><div class="line"><a name="l00914"></a><span class="lineno">  914</span>&#160;        {</div><div class="line"><a name="l00915"></a><span class="lineno">  915</span>&#160;        }</div><div class="line"><a name="l00916"></a><span class="lineno">  916</span>&#160;</div><div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;</div><div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;</div><div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea32b7c944cb953f24f6998ad5eb9f835d">ROM_RESET_CMD</a>; }</div><div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;</div><div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;</div><div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;    };</div><div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;</div><div class="line"><a name="l00937"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_mem_enable_command.html">  937</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_mem_enable_command.html">MemEnableCommand</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a></div><div class="line"><a name="l00938"></a><span class="lineno">  938</span>&#160;    {</div><div class="line"><a name="l00939"></a><span class="lineno">  939</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00941"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_mem_enable_command.html#a165297475f43d1a1dd7663b27fe15023">  941</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_mem_enable_command.html#a165297475f43d1a1dd7663b27fe15023">MemEnableCommand</a>()</div><div class="line"><a name="l00942"></a><span class="lineno">  942</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a>()</div><div class="line"><a name="l00943"></a><span class="lineno">  943</span>&#160;            , m_startAddress(0)</div><div class="line"><a name="l00944"></a><span class="lineno">  944</span>&#160;            , m_byteCount(0)</div><div class="line"><a name="l00945"></a><span class="lineno">  945</span>&#160;            , m_memControllerId(0)</div><div class="line"><a name="l00946"></a><span class="lineno">  946</span>&#160;        {</div><div class="line"><a name="l00947"></a><span class="lineno">  947</span>&#160;        }</div><div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;</div><div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> initFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count, <span class="keywordtype">unsigned</span> *consumed);</div><div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;</div><div class="line"><a name="l00953"></a><span class="lineno">  953</span>&#160;</div><div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;        <span class="keyword">virtual</span> uint8_t getTag()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea231273ec046a1a6c72b79e9211ada60c">ROM_MEM_ENABLE_CMD</a>; }</div><div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillCommandHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">boot_command_t</a> &amp;header);</div><div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;</div><div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;</div><div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;        <span class="keywordtype">void</span> setAddressRange(uint32_t startAddress, uint32_t count);</div><div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;        <span class="keywordtype">void</span> getAddressRange(uint32_t *startAddress, uint32_t *count) <span class="keyword">const</span>;</div><div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;</div><div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;</div><div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;        <span class="keywordtype">void</span> setMemControllerId(uint32_t memControllerId) { m_memControllerId = memControllerId; }</div><div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;        uint32_t getMemControllerId()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_memControllerId; }</div><div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;</div><div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;</div><div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;        uint32_t m_startAddress;</div><div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;        uint32_t m_byteCount;</div><div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;        uint32_t m_memControllerId;</div><div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;    };</div><div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;</div><div class="line"><a name="l00989"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html">  989</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">CipherBlockGenerator</a></div><div class="line"><a name="l00990"></a><span class="lineno">  990</span>&#160;    {</div><div class="line"><a name="l00991"></a><span class="lineno">  991</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00993"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a53165656e3f869597464f208cc50cc17">  993</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a53165656e3f869597464f208cc50cc17">Section</a>()</div><div class="line"><a name="l00994"></a><span class="lineno">  994</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">CipherBlockGenerator</a>()</div><div class="line"><a name="l00995"></a><span class="lineno">  995</span>&#160;            , m_identifier(0)</div><div class="line"><a name="l00996"></a><span class="lineno">  996</span>&#160;            , m_image(0)</div><div class="line"><a name="l00997"></a><span class="lineno">  997</span>&#160;            , m_alignment(<a class="code" href="classelftosb_1_1_encore_boot_image.html#a8cae9f81a039661c829ca51d954e3560ac6848708150e43ac9a8302b8a00dcc1f">BOOT_IMAGE_MINIMUM_SECTION_ALIGNMENT</a>)</div><div class="line"><a name="l00998"></a><span class="lineno">  998</span>&#160;            , <a class="code" href="classelftosb_1_1_encore_boot_image.html#ade1b69371717ca2cb04fc525eadec849">m_flags</a>(0)</div><div class="line"><a name="l00999"></a><span class="lineno">  999</span>&#160;            , m_leaveUnencrypted(false)</div><div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>&#160;        {</div><div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>&#160;        }</div><div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>&#160;</div><div class="line"><a name="l01004"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#aa70f133d779723452c8cc6108e545f54"> 1004</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#aa70f133d779723452c8cc6108e545f54">Section</a>(uint32_t identifier)</div><div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">CipherBlockGenerator</a>()</div><div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>&#160;            , m_identifier(identifier)</div><div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>&#160;            , m_image(0)</div><div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>&#160;            , m_alignment(<a class="code" href="classelftosb_1_1_encore_boot_image.html#a8cae9f81a039661c829ca51d954e3560ac6848708150e43ac9a8302b8a00dcc1f">BOOT_IMAGE_MINIMUM_SECTION_ALIGNMENT</a>)</div><div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>&#160;            , <a class="code" href="classelftosb_1_1_encore_boot_image.html#ade1b69371717ca2cb04fc525eadec849">m_flags</a>(0)</div><div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>&#160;            , m_leaveUnencrypted(false)</div><div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>&#160;        {</div><div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>&#160;        }</div><div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>&#160;</div><div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>&#160;</div><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;        <span class="keyword">inline</span> <span class="keywordtype">void</span> setIdentifier(uint32_t identifier) { m_identifier = identifier; }</div><div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;        <span class="keyword">inline</span> uint32_t getIdentifier()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_identifier; }</div><div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;</div><div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;</div><div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> setFlags(uint32_t flags) { <a class="code" href="classelftosb_1_1_encore_boot_image.html#ade1b69371717ca2cb04fc525eadec849">m_flags</a> = flags; }</div><div class="line"><a name="l01029"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ab9b71263e0f3d3ad8d4c936036e2f640"> 1029</a></span>&#160;        <span class="keyword">virtual</span> uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ab9b71263e0f3d3ad8d4c936036e2f640">getFlags</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#ade1b69371717ca2cb04fc525eadec849">m_flags</a> | (m_leaveUnencrypted ? <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a576b9de05acd56d12c6171b0ad67353f">ROM_SECTION_CLEARTEXT</a> : 0); }</div><div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillSectionHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1section__header__t">section_header_t</a> &amp;header);</div><div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;</div><div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;</div><div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;        <span class="keywordtype">void</span> setImage(<a class="code" href="classelftosb_1_1_encore_boot_image.html">EncoreBootImage</a> *image) { m_image = image; }</div><div class="line"><a name="l01039"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a7c7650c56b957ed7d8ab60d937679cb3"> 1039</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html">EncoreBootImage</a> *<a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a7c7650c56b957ed7d8ab60d937679cb3">getImage</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_image; }</div><div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>&#160;</div><div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>&#160;</div><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;        <span class="keywordtype">void</span> setAlignment(<span class="keywordtype">unsigned</span> alignment);</div><div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;</div><div class="line"><a name="l01048"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a4a22fa0c520faf05a221c26374ada7bf"> 1048</a></span>&#160;        <span class="keywordtype">unsigned</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a4a22fa0c520faf05a221c26374ada7bf">getAlignment</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_alignment; }</div><div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>&#160;        <span class="keywordtype">unsigned</span> getPadBlockCountForOffset(<span class="keywordtype">unsigned</span> offset);</div><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;</div><div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;</div><div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;        <span class="keywordtype">void</span> setLeaveUnencrypted(<span class="keywordtype">unsigned</span> flag) { m_leaveUnencrypted = flag; }</div><div class="line"><a name="l01058"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ad66237e9ffe5fe72ba289394621739f2"> 1058</a></span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ad66237e9ffe5fe72ba289394621739f2">getLeaveUnencrypted</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_leaveUnencrypted; }</div><div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;</div><div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l01062"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a93afd619fa43846f62dacd395fbd264b"> 1062</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a93afd619fa43846f62dacd395fbd264b">m_identifier</a>;    </div><div class="line"><a name="l01063"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ad80e8e1970fc1a08f7e92004a13afedf"> 1063</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image.html">EncoreBootImage</a> *<a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ad80e8e1970fc1a08f7e92004a13afedf">m_image</a>; </div><div class="line"><a name="l01064"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#acd1fb40e9ee26fd3b311f16af1426cf7"> 1064</a></span>&#160;        <span class="keywordtype">unsigned</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#acd1fb40e9ee26fd3b311f16af1426cf7">m_alignment</a>;     </div><div class="line"><a name="l01065"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a5d79f9d31b43b2cc532f9b3e756c5ce0"> 1065</a></span>&#160;        uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a5d79f9d31b43b2cc532f9b3e756c5ce0">m_flags</a>;         </div><div class="line"><a name="l01066"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a26b41c16bb8b01bb7b815107e9c91290"> 1066</a></span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#a26b41c16bb8b01bb7b815107e9c91290">m_leaveUnencrypted</a>;  </div><div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;    };</div><div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;</div><div class="line"><a name="l01072"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html"> 1072</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html">BootSection</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a></div><div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;    {</div><div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;        <span class="keyword">typedef</span> std::list&lt;BootCommand *&gt; command_list_t;</div><div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;        <span class="keyword">typedef</span> command_list_t::iterator iterator_t;</div><div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;        <span class="keyword">typedef</span> command_list_t::const_iterator const_iterator_t;</div><div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;</div><div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l01081"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a4cee33a70a372af6020121e90069debd"> 1081</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a4cee33a70a372af6020121e90069debd">BootSection</a>()</div><div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a>()</div><div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;        {</div><div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160;        }</div><div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;</div><div class="line"><a name="l01087"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a446539442bb8d25ade8c9488c371535c"> 1087</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a446539442bb8d25ade8c9488c371535c">BootSection</a>(uint32_t identifier)</div><div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a>(identifier)</div><div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;        {</div><div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;        }</div><div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160;</div><div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160;        <span class="keyword">virtual</span> ~<a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html">BootSection</a>();</div><div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;</div><div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> fillFromData(<span class="keyword">const</span> cipher_block_t *blocks, <span class="keywordtype">unsigned</span> count);</div><div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;</div><div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;</div><div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;        <span class="keyword">virtual</span> uint32_t getFlags()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html#ab9b71263e0f3d3ad8d4c936036e2f640">Section::getFlags</a>() | <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a94aa6b74f170c47cae4cf0b3b9c81994">ROM_SECTION_BOOTABLE</a>; }</div><div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;</div><div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;</div><div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;        <span class="keywordtype">void</span> addCommand(<a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">BootCommand</a> *command) { m_commands.push_back(command); }</div><div class="line"><a name="l01112"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a9d580f54378feeab1d203e7ab8d9df9d"> 1112</a></span>&#160;        <span class="keywordtype">unsigned</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a9d580f54378feeab1d203e7ab8d9df9d">getCommandCount</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (<span class="keywordtype">unsigned</span>)m_commands.size(); }</div><div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;        iterator_t begin() { <span class="keywordflow">return</span> m_commands.begin(); }</div><div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160;        iterator_t end() { <span class="keywordflow">return</span> m_commands.end(); }</div><div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;        const_iterator_t begin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_commands.begin(); }</div><div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160;        const_iterator_t end()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> m_commands.end(); }</div><div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160;</div><div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160;</div><div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getBlockCount() <span class="keyword">const</span>;</div><div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;</div><div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getBlocks(<span class="keywordtype">unsigned</span> offset, <span class="keywordtype">unsigned</span> maxCount, cipher_block_t *data);</div><div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;</div><div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;</div><div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l01132"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a6cfd5ea24112c0d07f690613e1470b17"> 1132</a></span>&#160;        command_list_t <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a6cfd5ea24112c0d07f690613e1470b17">m_commands</a>; </div><div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;</div><div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160;        <span class="keywordtype">void</span> deleteCommands();</div><div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160;    };</div><div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;</div><div class="line"><a name="l01142"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html"> 1142</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html">DataSection</a> : <span class="keyword">public</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a></div><div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160;    {</div><div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l01146"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#ac9677d19855b5469afba77b58be8f2b2"> 1146</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#ac9677d19855b5469afba77b58be8f2b2">DataSection</a>()</div><div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a>()</div><div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;            , m_data()</div><div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;            , m_length(0)</div><div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;        {</div><div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;        }</div><div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;</div><div class="line"><a name="l01154"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a8f501c1b74ba7a06f7b828195cb67fa2"> 1154</a></span>&#160;        <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a8f501c1b74ba7a06f7b828195cb67fa2">DataSection</a>(uint32_t identifier)</div><div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;            : <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a>(identifier)</div><div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;            , m_data()</div><div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;            , m_length(0)</div><div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;        {</div><div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;        }</div><div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;</div><div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;        <span class="keywordtype">void</span> setData(<span class="keyword">const</span> uint8_t *data, <span class="keywordtype">unsigned</span> length);</div><div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;</div><div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;        <span class="keywordtype">void</span> setDataNoCopy(<span class="keyword">const</span> uint8_t *data, <span class="keywordtype">unsigned</span> length);</div><div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;</div><div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160;</div><div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getBlockCount() <span class="keyword">const</span>;</div><div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;</div><div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> getBlocks(<span class="keywordtype">unsigned</span> offset, <span class="keywordtype">unsigned</span> maxCount, cipher_block_t *data);</div><div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160;</div><div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>&#160;</div><div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l01180"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a4187d6f79a268d40f24aa5dd77009e29"> 1180</a></span>&#160;        <a class="code" href="group__smart__pointer.html">smart_array_ptr&lt;uint8_t&gt;</a> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a4187d6f79a268d40f24aa5dd77009e29">m_data</a>; </div><div class="line"><a name="l01181"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a5c84fd1c529d7f4730a35eb9c58eb584"> 1181</a></span>&#160;        <span class="keywordtype">unsigned</span> <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a5c84fd1c529d7f4730a35eb9c58eb584">m_length</a>;               </div><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;    };</div><div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;</div><div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l01185"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aeadee36826ff7ea7377658e83073a9ee"> 1185</a></span>&#160;    <span class="keyword">typedef</span> std::list&lt;Section *&gt; <a class="code" href="classelftosb_1_1_encore_boot_image.html#aeadee36826ff7ea7377658e83073a9ee">section_list_t</a>;                     </div><div class="line"><a name="l01186"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a085b76c76f4df91c5328e2d4a0f30705"> 1186</a></span>&#160;    <span class="keyword">typedef</span> section_list_t::iterator <a class="code" href="classelftosb_1_1_encore_boot_image.html#a085b76c76f4df91c5328e2d4a0f30705">section_iterator_t</a>;             </div><div class="line"><a name="l01187"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ab5d7245a268bc6b6bf1acff201509966"> 1187</a></span>&#160;    <span class="keyword">typedef</span> section_list_t::const_iterator <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab5d7245a268bc6b6bf1acff201509966">const_section_iterator_t</a>; </div><div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160;</div><div class="line"><a name="l01189"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a9fd906e0ec71d651a4892d14ec252c84"> 1189</a></span>&#160;    <span class="keyword">typedef</span> std::vector&lt;AES128Key&gt; <a class="code" href="classelftosb_1_1_encore_boot_image.html#a9fd906e0ec71d651a4892d14ec252c84">key_list_t</a>;               </div><div class="line"><a name="l01190"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ab81e367ac664f6c0057eed1116706c33"> 1190</a></span>&#160;    <span class="keyword">typedef</span> key_list_t::iterator <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab81e367ac664f6c0057eed1116706c33">key_iterator_t</a>;             </div><div class="line"><a name="l01191"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a50defdef155d148db068e295150e17df"> 1191</a></span>&#160;    <span class="keyword">typedef</span> key_list_t::const_iterator <a class="code" href="classelftosb_1_1_encore_boot_image.html#a50defdef155d148db068e295150e17df">const_key_iterator_t</a>; </div><div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;</div><div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;    <a class="code" href="classelftosb_1_1_encore_boot_image.html#afb1ee3fb83c59e38cfc3ddd94de2da0b">EncoreBootImage</a>();</div><div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;</div><div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160;    <span class="keyword">virtual</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a8a1a1be88592d2b47c5c24d229d42429">~EncoreBootImage</a>();</div><div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;</div><div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>&#160;</div><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a5ce1eb45afceb8587042380ae050f63a">addSection</a>(<a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a> *newSection);</div><div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> sectionCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (<span class="keywordtype">unsigned</span>)<a class="code" href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc">m_sections</a>.size(); }</div><div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;    <span class="keyword">inline</span> section_iterator_t beginSection() { <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc">m_sections</a>.begin(); }</div><div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;    <span class="keyword">inline</span> section_iterator_t endSection() { <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc">m_sections</a>.end(); }</div><div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;    <span class="keyword">inline</span> const_section_iterator_t beginSection()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc">m_sections</a>.begin(); }</div><div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;    <span class="keyword">inline</span> const_section_iterator_t endSection()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc">m_sections</a>.end(); }</div><div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160;    section_iterator_t findSection(<a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a> *section);</div><div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;</div><div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;    uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a5bb1b5619f290a32cbb013e4ebf312d6">getSectionOffset</a>(<a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a> *section);</div><div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>&#160;</div><div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;</div><div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> addKey(<span class="keyword">const</span> <a class="code" href="class_a_e_s_key.html">AES128Key</a> &amp;newKey) { <a class="code" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">m_keys</a>.push_back(newKey); }</div><div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> keyCount()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (<span class="keywordtype">unsigned</span>)<a class="code" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">m_keys</a>.size(); }</div><div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;    <span class="keyword">inline</span> key_iterator_t beginKeys() { <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">m_keys</a>.begin(); }</div><div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;    <span class="keyword">inline</span> key_iterator_t endKeys() { <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">m_keys</a>.end(); }</div><div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;    <span class="keyword">inline</span> const_key_iterator_t beginKeys()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">m_keys</a>.begin(); }</div><div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;    <span class="keyword">inline</span> const_key_iterator_t endKeys()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">m_keys</a>.end(); }</div><div class="line"><a name="l01223"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#ae365385ce4510fe6358d339aade6cb43"> 1223</a></span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#ae365385ce4510fe6358d339aade6cb43">isEncrypted</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">m_keys</a>.size() != 0; }</div><div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160;</div><div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160;</div><div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> setProductVersion(<span class="keyword">const</span> <a class="code" href="structelftosb_1_1version__t.html">version_t</a> &amp;version);</div><div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> setComponentVersion(<span class="keyword">const</span> <a class="code" href="structelftosb_1_1version__t.html">version_t</a> &amp;version);</div><div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160;</div><div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;</div><div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;    <span class="keyword">inline</span> <span class="keywordtype">void</span> setFlags(uint16_t flags) { <a class="code" href="classelftosb_1_1_encore_boot_image.html#adbeafb0b4b3d7f918d3086cd91c14c5d">m_headerFlags</a> = flags; }</div><div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;    <span class="keyword">inline</span> uint32_t getFlags()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#adbeafb0b4b3d7f918d3086cd91c14c5d">m_headerFlags</a>; }</div><div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;</div><div class="line"><a name="l01239"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a054e62e8f5af64e5a211f625cad5e9f9"> 1239</a></span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a054e62e8f5af64e5a211f625cad5e9f9">setDriveTag</a>(uint16_t tag) { <a class="code" href="classelftosb_1_1_encore_boot_image.html#ab6de9b0a7b19ab575dc69e6a1c841a08">m_driveTag</a> = tag; }</div><div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160;    uint32_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#aef93adad47f1f0e2c97848583748831d">getImageSize</a>();</div><div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160;</div><div class="line"><a name="l01244"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#aa468d250328b0e4db96da7cc872aa2db"> 1244</a></span>&#160;    <span class="keyword">virtual</span> std::string <a class="code" href="classelftosb_1_1_encore_boot_image.html#aa468d250328b0e4db96da7cc872aa2db">getFileExtension</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="stringliteral">&quot;.sb&quot;</span>; }</div><div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;</div><div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#ae8f073b4fe340ad0864e088746375305">writeToStream</a>(std::ostream &amp;stream);</div><div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160;</div><div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160;    <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">debugPrint</a>() <span class="keyword">const</span>;</div><div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;</div><div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160;<span class="keyword">protected</span>:</div><div class="line"><a name="l01255"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#adbeafb0b4b3d7f918d3086cd91c14c5d"> 1255</a></span>&#160;    uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#adbeafb0b4b3d7f918d3086cd91c14c5d">m_headerFlags</a>;       </div><div class="line"><a name="l01256"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a2552a17e499f822d987569a3205583a7"> 1256</a></span>&#160;    <a class="code" href="structelftosb_1_1version__t.html">version_t</a> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a2552a17e499f822d987569a3205583a7">m_productVersion</a>;   </div><div class="line"><a name="l01257"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a4e67153eaf06a03f43116d3444d38328"> 1257</a></span>&#160;    <a class="code" href="structelftosb_1_1version__t.html">version_t</a> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a4e67153eaf06a03f43116d3444d38328">m_componentVersion</a>; </div><div class="line"><a name="l01258"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a76854f51e9bd7c433e200f8d16d64841"> 1258</a></span>&#160;    uint16_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a76854f51e9bd7c433e200f8d16d64841">m_driveTag</a>;          </div><div class="line"><a name="l01259"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc"> 1259</a></span>&#160;    section_list_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc">m_sections</a>;    </div><div class="line"><a name="l01260"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e"> 1260</a></span>&#160;    key_list_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">m_keys</a>;            </div><div class="line"><a name="l01261"></a><span class="lineno"><a class="line" href="classelftosb_1_1_encore_boot_image.html#a29adb78a51993503262148bf65d802d3"> 1261</a></span>&#160;    <a class="code" href="class_a_e_s_key.html">AES128Key</a> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a29adb78a51993503262148bf65d802d3">m_sessionKey</a>;       </div><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160;</div><div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160;    <span class="keywordtype">void</span> prepareImageHeader(<a class="code" href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__image__header__t">boot_image_header_t</a> &amp;header);</div><div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;    uint64_t <a class="code" href="classelftosb_1_1_encore_boot_image.html#af9059a750946546a580a84fc94362209">getTimestamp</a>();</div><div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160;    <a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a> *<a class="code" href="classelftosb_1_1_encore_boot_image.html#aa4fd2b9c679938ec3e189352f65b362d">findFirstBootableSection</a>();</div><div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;    <span class="keywordtype">unsigned</span> <a class="code" href="classelftosb_1_1_encore_boot_image.html#a23ce0c7f23992826b1354cb1a1e05c19">getPadBlockCountForSection</a>(<a class="code" href="classelftosb_1_1_encore_boot_image_1_1_section.html">Section</a> *section, <span class="keywordtype">unsigned</span> offset);</div><div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160;};</div><div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160;</div><div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>&#160;}; <span class="comment">// namespace elftosb</span></div><div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>&#160;</div><div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>&#160;<span class="preprocessor">#endif // _EncoreBootImage_h_</span></div><div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a8a1a1be88592d2b47c5c24d229d42429"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a8a1a1be88592d2b47c5c24d229d42429">elftosb::EncoreBootImage::~EncoreBootImage</a></div><div class="ttdeci">virtual ~EncoreBootImage()</div><div class="ttdoc">Destructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:31</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddeaa530f91c73779b2c26dda739b9ea157d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddeaa530f91c73779b2c26dda739b9ea157d">elftosb::EncoreBootImage::ROM_JUMP_CMD</a></div><div class="ttdoc">Jump to address command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:268</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a923b8c5725f62f85c6a557e437b9699daf6e8d5cc87e761073ba57f223473dc95"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699daf6e8d5cc87e761073ba57f223473dc95">elftosb::EncoreBootImage::ROM_IMAGE_HEADER_SIGNATURE2</a></div><div class="ttdoc">Value for elftosb::EncoreBootImage::boot_image_header_t::m_signature2;. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:115</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a29adb78a51993503262148bf65d802d3"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a29adb78a51993503262148bf65d802d3">elftosb::EncoreBootImage::m_sessionKey</a></div><div class="ttdeci">AES128Key m_sessionKey</div><div class="ttdoc">Session key we&amp;#39;re using. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1261</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_structelftosb_1_1_encore_boot_image_1_1dek__dictionary__t"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1dek__dictionary__t">elftosb::EncoreBootImage::dek_dictionary_t</a></div><div class="ttdoc">The DEK dictionary always follows the image header, in the next cipher block. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:194</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_tag_command_html_adb9194e5e71ef29098a1130c58349e62"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#adb9194e5e71ef29098a1130c58349e62">elftosb::EncoreBootImage::TagCommand::m_sectionLength</a></div><div class="ttdeci">uint32_t m_sectionLength</div><div class="ttdoc">Number of cipher blocks this section occupies. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:543</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddea41cf0dfec1eea6f229d3eb2163ab3404"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea41cf0dfec1eea6f229d3eb2163ab3404">elftosb::EncoreBootImage::ROM_FILL_CMD</a></div><div class="ttdoc">Pattern fill command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:267</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ab8298bb404949aca90edd839b690337a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ab8298bb404949aca90edd839b690337a">elftosb::EncoreBootImage::boot_image_header_t::m_firstBootableSectionID</a></div><div class="ttdeci">section_id_t m_firstBootableSectionID</div><div class="ttdoc">ID of section to start booting from. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:167</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_load_command_html_af455d51ffe43e1427d48e596e02cbbc0"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#af455d51ffe43e1427d48e596e02cbbc0">elftosb::EncoreBootImage::LoadCommand::setDCD</a></div><div class="ttdeci">void setDCD(bool isDCD)</div><div class="ttdoc">Sets the load-dcd flag. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:571</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_adbeafb0b4b3d7f918d3086cd91c14c5d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#adbeafb0b4b3d7f918d3086cd91c14c5d">elftosb::EncoreBootImage::m_headerFlags</a></div><div class="ttdeci">uint16_t m_headerFlags</div><div class="ttdoc">Flags field in the boot image header. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1255</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_tag_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html">elftosb::EncoreBootImage::TagCommand</a></div><div class="ttdoc">Section tag bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:507</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddeadf5042cf30c7a189ca9e435cf55e07ce"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddeadf5042cf30c7a189ca9e435cf55e07ce">elftosb::EncoreBootImage::ROM_CALL_CMD</a></div><div class="ttdoc">Call function command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:269</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_mem_enable_command_html_a165297475f43d1a1dd7663b27fe15023"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_mem_enable_command.html#a165297475f43d1a1dd7663b27fe15023">elftosb::EncoreBootImage::MemEnableCommand::MemEnableCommand</a></div><div class="ttdeci">MemEnableCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:941</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html">elftosb::EncoreBootImage::Section</a></div><div class="ttdoc">Base class for a section of an Encore boot image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:989</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a31105ca4227cb4af2d856acc4ef128eb"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a31105ca4227cb4af2d856acc4ef128eb">elftosb::EncoreBootImage::boot_image_header_t::m_firstBootTagBlock</a></div><div class="ttdeci">uint32_t m_firstBootTagBlock</div><div class="ttdoc">Offset from start of file to the first boot tag, in blocks. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:166</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_data_section_html_a8f501c1b74ba7a06f7b828195cb67fa2"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a8f501c1b74ba7a06f7b828195cb67fa2">elftosb::EncoreBootImage::DataSection::DataSection</a></div><div class="ttdeci">DataSection(uint32_t identifier)</div><div class="ttdoc">Constructor taking the unique identifier for this section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1154</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_afb1ee3fb83c59e38cfc3ddd94de2da0b"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#afb1ee3fb83c59e38cfc3ddd94de2da0b">elftosb::EncoreBootImage::EncoreBootImage</a></div><div class="ttdeci">EncoreBootImage()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:23</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_acd1fb40e9ee26fd3b311f16af1426cf7"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#acd1fb40e9ee26fd3b311f16af1426cf7">elftosb::EncoreBootImage::Section::m_alignment</a></div><div class="ttdeci">unsigned m_alignment</div><div class="ttdoc">Alignment requirement for the start of this section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1064</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a923b8c5725f62f85c6a557e437b9699da3d2e6182924fe2b2e3abc6c95a94afd4"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da3d2e6182924fe2b2e3abc6c95a94afd4">elftosb::EncoreBootImage::ROM_BOOT_IMAGE_MAJOR_VERSION</a></div><div class="ttdoc">Current boot image major version. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:117</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_jump_command_html_ae7428e27068f083f0381f961413ddd09"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#ae7428e27068f083f0381f961413ddd09">elftosb::EncoreBootImage::JumpCommand::m_stackPointer</a></div><div class="ttdeci">uint32_t m_stackPointer</div><div class="ttdoc">Stack pointer for &quot;jump sp&quot; command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:880</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_mode_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html">elftosb::EncoreBootImage::ModeCommand</a></div><div class="ttdoc">Change boot mode bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:663</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_command_html_ac20b874eb88952931204d1ea0f98267f"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#ac20b874eb88952931204d1ea0f98267f">elftosb::EncoreBootImage::BootCommand::BootCommand</a></div><div class="ttdeci">BootCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:394</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddea482ff1ec8ceb69c4d6e7ba8e2944dea1"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea482ff1ec8ceb69c4d6e7ba8e2944dea1">elftosb::EncoreBootImage::ROM_LOAD_CMD</a></div><div class="ttdoc">Load data command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:266</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aa8af7e564a506946f547b62fb5cd7f18"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aa8af7e564a506946f547b62fb5cd7f18">elftosb::EncoreBootImage::boot_image_header_t::m_majorVersion</a></div><div class="ttdeci">uint8_t m_majorVersion</div><div class="ttdoc">Major version for the image format, see ROM_BOOT_IMAGE_MAJOR_VERSION. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:162</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_adeeed40cfd2343cbfbda1a8d9e25336e"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#adeeed40cfd2343cbfbda1a8d9e25336e">elftosb::EncoreBootImage::m_keys</a></div><div class="ttdeci">key_list_t m_keys</div><div class="ttdoc">List of key encryption keys. If empty, the image is unencrypted. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1260</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_section_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html">elftosb::EncoreBootImage::BootSection</a></div><div class="ttdoc">A bootable section of an Encore boot image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1072</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a923b8c5725f62f85c6a557e437b9699da8b26ac6aadd820c16038228cae672974"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da8b26ac6aadd820c16038228cae672974">elftosb::EncoreBootImage::ROM_IMAGE_HEADER_SIGNATURE</a></div><div class="ttdoc">Signature in elftosb::EncoreBootImage::boot_image_header_t::m_signature. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:113</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_afdb9845d3378745374aed342cfae479ea7f81de6ac99a5e1ce383d5b8bc96a16e"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#afdb9845d3378745374aed342cfae479ea7f81de6ac99a5e1ce383d5b8bc96a16e">elftosb::EncoreBootImage::ROM_MEM_SPACE_IFR</a></div><div class="ttdoc">IFR memory. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:340</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aeadee36826ff7ea7377658e83073a9ee"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aeadee36826ff7ea7377658e83073a9ee">elftosb::EncoreBootImage::section_list_t</a></div><div class="ttdeci">std::list&lt; Section * &gt; section_list_t</div><div class="ttdoc">List of image sections. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1185</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a62d2bf49ae747642b23e701d3f241573a55b9cb661d94d6b6ced61619eb95596d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a62d2bf49ae747642b23e701d3f241573a55b9cb661d94d6b6ced61619eb95596d">elftosb::EncoreBootImage::ROM_MEM_SPACE_SHIFT</a></div><div class="ttdoc">Bit position of mem space ID. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:315</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddea32b7c944cb953f24f6998ad5eb9f835d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea32b7c944cb953f24f6998ad5eb9f835d">elftosb::EncoreBootImage::ROM_RESET_CMD</a></div><div class="ttdoc">Reset command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:272</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aa09338280eb11c08be1cc915280609f2a8e10e316e7030ade208692a0589ee1f8"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a8e10e316e7030ade208692a0589ee1f8">elftosb::EncoreBootImage::ROM_FILL_WORD</a></div><div class="ttdoc">Fill with word sized pattern. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:294</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a2bd5150364ac9ca9544a084d6fc9e5cd"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a2bd5150364ac9ca9544a084d6fc9e5cd">elftosb::EncoreBootImage::section_header_t::m_tag</a></div><div class="ttdeci">uint32_t m_tag</div><div class="ttdoc">Unique identifier for this section. High bit must be zero. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:211</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_call_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_call_command.html">elftosb::EncoreBootImage::CallCommand</a></div><div class="ttdoc">Call function bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:890</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_fill_command_html_a73501ba71ef3e30182242d0534910a43"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#a73501ba71ef3e30182242d0534910a43">elftosb::EncoreBootImage::FillCommand::m_count</a></div><div class="ttdeci">uint32_t m_count</div><div class="ttdoc">Number of bytes to fill. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:656</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddea360fe5535a567967683170c50d7411a7"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea360fe5535a567967683170c50d7411a7">elftosb::EncoreBootImage::ROM_TAG_CMD</a></div><div class="ttdoc">Section tag command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:265</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_tag_command_html_afbb286be897999afd2e4620ddc82059a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#afbb286be897999afd2e4620ddc82059a">elftosb::EncoreBootImage::TagCommand::TagCommand</a></div><div class="ttdeci">TagCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:511</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a23f1ea8999c4485f5922f78aa5ea99f9"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a23f1ea8999c4485f5922f78aa5ea99f9">elftosb::EncoreBootImage::boot_image_header_t::m_sectionCount</a></div><div class="ttdeci">uint16_t m_sectionCount</div><div class="ttdoc">Number of section headers in this table. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:171</div></div>
<div class="ttc" id="group__smart__pointer_html"><div class="ttname"><a href="group__smart__pointer.html">smart_array_ptr&lt; uint8_t &gt;</a></div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_ad80e8e1970fc1a08f7e92004a13afedf"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#ad80e8e1970fc1a08f7e92004a13afedf">elftosb::EncoreBootImage::Section::m_image</a></div><div class="ttdeci">EncoreBootImage * m_image</div><div class="ttdoc">The image to which this section belongs. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1063</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_load_command_html_a206b6b3adda12c1ed601d347f3e01fda"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a206b6b3adda12c1ed601d347f3e01fda">elftosb::EncoreBootImage::LoadCommand::m_length</a></div><div class="ttdeci">uint32_t m_length</div><div class="ttdoc">Number of bytes to load. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:606</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a1ec985e228a39441dc3f55486ac2b3f3a21317be4b82ca7b7cef1f89ebfc86fc7"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a1ec985e228a39441dc3f55486ac2b3f3a21317be4b82ca7b7cef1f89ebfc86fc7">elftosb::EncoreBootImage::ROM_ERASE_ALL_MASK</a></div><div class="ttdoc">Erase all flash instead of just a range. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:321</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a0472cc0e09c8f89678924443b8ea12fc"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a0472cc0e09c8f89678924443b8ea12fc">elftosb::EncoreBootImage::m_sections</a></div><div class="ttdeci">section_list_t m_sections</div><div class="ttdoc">Sections contained in this image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1259</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a752397a43efb165be2a01a4160c1d63a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a752397a43efb165be2a01a4160c1d63a">elftosb::EncoreBootImage::boot_image_header_t::m_keyDictionaryBlock</a></div><div class="ttdeci">uint16_t m_keyDictionaryBlock</div><div class="ttdoc">Starting block number for the key dictionary. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:169</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_program_command_html_a711de4612b1ce599349a565b3a11371a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a711de4612b1ce599349a565b3a11371a">elftosb::EncoreBootImage::ProgramCommand::m_dataWord2</a></div><div class="ttdeci">uint32_t m_dataWord2</div><div class="ttdoc">Second 4 bytes to write, valid if m_doEightByte is true. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:825</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_aa70f133d779723452c8cc6108e545f54"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#aa70f133d779723452c8cc6108e545f54">elftosb::EncoreBootImage::Section::Section</a></div><div class="ttdeci">Section(uint32_t identifier)</div><div class="ttdoc">Constructor taking the unique identifier for this section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1004</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aecf35ebe852abbe2d7213e24ceb9ccdd"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aecf35ebe852abbe2d7213e24ceb9ccdd">elftosb::EncoreBootImage::boot_image_header_t::m_padding1</a></div><div class="ttdeci">uint8_t m_padding1[6]</div><div class="ttdoc">Padding to round up to next cipher block. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:180</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a7e4ca380d4cca06b5f8a329124acdadd"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a7e4ca380d4cca06b5f8a329124acdadd">elftosb::EncoreBootImage::boot_image_header_t::m_minorVersion</a></div><div class="ttdeci">uint8_t m_minorVersion</div><div class="ttdoc">Minor version of the boot image format, see ROM_BOOT_IMAGE_MINOR_VERSION. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:163</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a050eb0cc46b5e1020023f6ee29dd4f36"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a050eb0cc46b5e1020023f6ee29dd4f36">elftosb::EncoreBootImage::boot_command_t::m_count</a></div><div class="ttdeci">uint32_t m_count</div><div class="ttdoc">Number of bytes on which to operate. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:255</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_fill_command_html_aabc131dad707cd018e30d8a2c0d127c5"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#aabc131dad707cd018e30d8a2c0d127c5">elftosb::EncoreBootImage::FillCommand::m_pattern</a></div><div class="ttdeci">uint32_t m_pattern</div><div class="ttdoc">Fill pattern. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:657</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ab81e367ac664f6c0057eed1116706c33"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ab81e367ac664f6c0057eed1116706c33">elftosb::EncoreBootImage::key_iterator_t</a></div><div class="ttdeci">key_list_t::iterator key_iterator_t</div><div class="ttdoc">Iterator over KEKs. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1190</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aef93adad47f1f0e2c97848583748831d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aef93adad47f1f0e2c97848583748831d">elftosb::EncoreBootImage::getImageSize</a></div><div class="ttdeci">uint32_t getImageSize()</div><div class="ttdoc">Calculates the total number of cipher blocks the image consumes. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:488</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_reset_command_html_a6980625e2a92ebefe914e90e9bd0f594"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_reset_command.html#a6980625e2a92ebefe914e90e9bd0f594">elftosb::EncoreBootImage::ResetCommand::ResetCommand</a></div><div class="ttdeci">ResetCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:912</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_erase_command_html_a96572598dc9a592bda3ea9af5e1eea64"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_erase_command.html#a96572598dc9a592bda3ea9af5e1eea64">elftosb::EncoreBootImage::EraseCommand::EraseCommand</a></div><div class="ttdeci">EraseCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:704</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_command_html_ae7d5a2f3eb06e9e5506be3d10b66e2c6"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#ae7d5a2f3eb06e9e5506be3d10b66e2c6">elftosb::EncoreBootImage::BootCommand::~BootCommand</a></div><div class="ttdeci">virtual ~BootCommand()</div><div class="ttdoc">Destructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:400</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_program_command_html_a594ebf2cb912f7fa95a177245d33594b"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a594ebf2cb912f7fa95a177245d33594b">elftosb::EncoreBootImage::ProgramCommand::m_index</a></div><div class="ttdeci">uint32_t m_index</div><div class="ttdoc">Index to write to. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:823</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_a93afd619fa43846f62dacd395fbd264b"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#a93afd619fa43846f62dacd395fbd264b">elftosb::EncoreBootImage::Section::m_identifier</a></div><div class="ttdeci">uint32_t m_identifier</div><div class="ttdoc">Unique identifier for this section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1062</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html">elftosb::EncoreBootImage</a></div><div class="ttdoc">Class to manage Encore boot image files. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:101</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ab5d7245a268bc6b6bf1acff201509966"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ab5d7245a268bc6b6bf1acff201509966">elftosb::EncoreBootImage::const_section_iterator_t</a></div><div class="ttdeci">section_list_t::const_iterator const_section_iterator_t</div><div class="ttdoc">Const iterator over sections. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1187</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_jump_command_html_a1c57b8129b2f1fee13e603fe4cedccf0"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a1c57b8129b2f1fee13e603fe4cedccf0">elftosb::EncoreBootImage::JumpCommand::m_address</a></div><div class="ttdeci">uint32_t m_address</div><div class="ttdoc">Address of the code to execute. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:878</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_mem_enable_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_mem_enable_command.html">elftosb::EncoreBootImage::MemEnableCommand</a></div><div class="ttdoc">Memory Enable bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:937</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_tag_command_html_a7e4e691f65fabd095190404d477af6f5"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#a7e4e691f65fabd095190404d477af6f5">elftosb::EncoreBootImage::TagCommand::m_isLast</a></div><div class="ttdeci">bool m_isLast</div><div class="ttdoc">Is this the last tag command? </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:545</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aa09338280eb11c08be1cc915280609f2a9511d4af09fd50de5e8a2e50e72f8908"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a9511d4af09fd50de5e8a2e50e72f8908">elftosb::EncoreBootImage::ROM_FILL_BYTE</a></div><div class="ttdoc">Fill with byte sized pattern. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:292</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a054e62e8f5af64e5a211f625cad5e9f9"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a054e62e8f5af64e5a211f625cad5e9f9">elftosb::EncoreBootImage::setDriveTag</a></div><div class="ttdeci">virtual void setDriveTag(uint16_t tag)</div><div class="ttdoc">Specify the drive tag to be set in the output file header. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1239</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_structelftosb_1_1_encore_boot_image_1_1dek__dictionary__entry__t"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1dek__dictionary__entry__t">elftosb::EncoreBootImage::dek_dictionary_entry_t</a></div><div class="ttdoc">Entry in elftosb::EncoreBootImage::dek_dictionary_t. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:187</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_structelftosb_1_1_encore_boot_image_1_1section__header__t"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1section__header__t">elftosb::EncoreBootImage::section_header_t</a></div><div class="ttdoc">Information about each section, held in the section table. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:209</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a9fd906e0ec71d651a4892d14ec252c84"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a9fd906e0ec71d651a4892d14ec252c84">elftosb::EncoreBootImage::key_list_t</a></div><div class="ttdeci">std::vector&lt; AES128Key &gt; key_list_t</div><div class="ttdoc">List of KEKs. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1189</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a76854f51e9bd7c433e200f8d16d64841"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a76854f51e9bd7c433e200f8d16d64841">elftosb::EncoreBootImage::m_driveTag</a></div><div class="ttdeci">uint16_t m_driveTag</div><div class="ttdoc">System drive tag for this boot image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1258</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a8cae9f81a039661c829ca51d954e3560ac6848708150e43ac9a8302b8a00dcc1f"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a8cae9f81a039661c829ca51d954e3560ac6848708150e43ac9a8302b8a00dcc1f">elftosb::EncoreBootImage::BOOT_IMAGE_MINIMUM_SECTION_ALIGNMENT</a></div><div class="ttdoc">Minimum alignment for a section is 16 bytes. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:124</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddead0f7be982547d05640e7b9c02ecd6f8d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddead0f7be982547d05640e7b9c02ecd6f8d">elftosb::EncoreBootImage::ROM_ERASE_CMD</a></div><div class="ttdoc">Flash erase command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:271</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_data_section_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_data_section.html">elftosb::EncoreBootImage::DataSection</a></div><div class="ttdoc">A non-bootable section of an Encore boot image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1142</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_program_command_html_ae420785599af7cb49cb858bdb996440a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#ae420785599af7cb49cb858bdb996440a">elftosb::EncoreBootImage::ProgramCommand::m_isEightByte</a></div><div class="ttdeci">bool m_isEightByte</div><div class="ttdoc">True if doing 8-byte write. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:822</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aedbf37ed729ad7f04f5912f7c384923fa0add3d7a4787059d6abc70c5308b7d5b"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aedbf37ed729ad7f04f5912f7c384923fa0add3d7a4787059d6abc70c5308b7d5b">elftosb::EncoreBootImage::ROM_PROG_8BYTE_MASK</a></div><div class="ttdoc">Program 8 bytes instead of 4 bytes. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:328</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a4e67153eaf06a03f43116d3444d38328"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a4e67153eaf06a03f43116d3444d38328">elftosb::EncoreBootImage::m_componentVersion</a></div><div class="ttdeci">version_t m_componentVersion</div><div class="ttdoc">Component version. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1257</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ac899003d6585e7dad5be1d4c0b2fb60eadcaf9e745066f375edab08f4fb5fe93d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ac899003d6585e7dad5be1d4c0b2fb60eadcaf9e745066f375edab08f4fb5fe93d">elftosb::EncoreBootImage::ROM_HAB_EXEC</a></div><div class="ttdoc">Changes jump or call command to a HAB jump or call. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:300</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a5bb1b5619f290a32cbb013e4ebf312d6"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a5bb1b5619f290a32cbb013e4ebf312d6">elftosb::EncoreBootImage::getSectionOffset</a></div><div class="ttdeci">uint32_t getSectionOffset(Section *section)</div><div class="ttdoc">Calculates the starting block number for the given section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:430</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a23ce0c7f23992826b1354cb1a1e05c19"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a23ce0c7f23992826b1354cb1a1e05c19">elftosb::EncoreBootImage::getPadBlockCountForSection</a></div><div class="ttdeci">unsigned getPadBlockCountForSection(Section *section, unsigned offset)</div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:464</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ae365385ce4510fe6358d339aade6cb43"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ae365385ce4510fe6358d339aade6cb43">elftosb::EncoreBootImage::isEncrypted</a></div><div class="ttdeci">bool isEncrypted() const </div><div class="ttdoc">The image is encrypted if there is at least one key. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1223</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a2552a17e499f822d987569a3205583a7"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a2552a17e499f822d987569a3205583a7">elftosb::EncoreBootImage::m_productVersion</a></div><div class="ttdeci">version_t m_productVersion</div><div class="ttdoc">Product version. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1256</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aa5100e9e32b54d3e0e5db28fa239b648"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aa5100e9e32b54d3e0e5db28fa239b648">elftosb::EncoreBootImage::dek_dictionary_entry_t::m_dek</a></div><div class="ttdeci">aes128_key_t m_dek</div><div class="ttdoc">AES-128 key with which the image payload is encrypted. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:190</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aa09338280eb11c08be1cc915280609f2a5d37310f36e10837bd53a2cd86a73529"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aa09338280eb11c08be1cc915280609f2a5d37310f36e10837bd53a2cd86a73529">elftosb::EncoreBootImage::ROM_FILL_HALF_WORD</a></div><div class="ttdoc">Fill with half-word sized pattern. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:293</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator_html_a80773110e06a465fa8c9184ccf51c06d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a80773110e06a465fa8c9184ccf51c06d">elftosb::EncoreBootImage::CipherBlockGenerator::debugPrint</a></div><div class="ttdeci">virtual void debugPrint() const </div><div class="ttdoc">Print out a string representation of the object. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:380</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html">elftosb::EncoreBootImage::CipherBlockGenerator</a></div><div class="ttdoc">Base class for objects that produce cipher blocks. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:350</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a322b233cfa40e2e7f074d006ef2d83a3ae65e961fe221cf36b45883b9d58aa80f"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a322b233cfa40e2e7f074d006ef2d83a3ae65e961fe221cf36b45883b9d58aa80f">elftosb::EncoreBootImage::ROM_DISPLAY_PROGRESS</a></div><div class="ttdoc">Print progress reports. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:107</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_data_section_html_ac9677d19855b5469afba77b58be8f2b2"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#ac9677d19855b5469afba77b58be8f2b2">elftosb::EncoreBootImage::DataSection::DataSection</a></div><div class="ttdeci">DataSection()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1146</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_program_command_html_afe0cfd759df40b3b6c0c137e780cc30e"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#afe0cfd759df40b3b6c0c137e780cc30e">elftosb::EncoreBootImage::ProgramCommand::ProgramCommand</a></div><div class="ttdeci">ProgramCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:767</div></div>
<div class="ttc" id="namespaceelftosb_html"><div class="ttname"><a href="namespaceelftosb.html">elftosb</a></div><div class="ttdef"><b>Definition:</b> BootImage.h:13</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddead71bc49b8e71814f167d2f8d268d546d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddead71bc49b8e71814f167d2f8d268d546d">elftosb::EncoreBootImage::ROM_PROG_CMD</a></div><div class="ttdoc">Program persistent bits command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:274</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ab6de9b0a7b19ab575dc69e6a1c841a08"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ab6de9b0a7b19ab575dc69e6a1c841a08">elftosb::EncoreBootImage::boot_image_header_t::m_driveTag</a></div><div class="ttdeci">uint16_t m_driveTag</div><div class="ttdoc">Drive tag for the system drive which this boot image belongs to. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:179</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_a4a22fa0c520faf05a221c26374ada7bf"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#a4a22fa0c520faf05a221c26374ada7bf">elftosb::EncoreBootImage::Section::getAlignment</a></div><div class="ttdeci">unsigned getAlignment() const </div><div class="ttdoc">Returns the current alignment, the minimum of which will be 16. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1048</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_erase_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_erase_command.html">elftosb::EncoreBootImage::EraseCommand</a></div><div class="ttdoc">Erase bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:700</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a078eb86031a0a1e656abcf4a11d792a5"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a078eb86031a0a1e656abcf4a11d792a5">elftosb::EncoreBootImage::boot_image_header_t::m_signature</a></div><div class="ttdeci">uint8_t m_signature[4]</div><div class="ttdoc">&amp;#39;STMP&amp;#39;, see ROM_IMAGE_HEADER_SIGNATURE. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:161</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ad9d8268d81aeaaf20b1640217554c968"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ad9d8268d81aeaaf20b1640217554c968">elftosb::EncoreBootImage::boot_image_header_t::m_componentVersion</a></div><div class="ttdeci">version_t m_componentVersion</div><div class="ttdoc">Component version. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:178</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_structelftosb_1_1_encore_boot_image_1_1boot__command__t"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__command__t">elftosb::EncoreBootImage::boot_command_t</a></div><div class="ttdoc">Structure for a Piano bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:249</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_ab9b71263e0f3d3ad8d4c936036e2f640"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#ab9b71263e0f3d3ad8d4c936036e2f640">elftosb::EncoreBootImage::Section::getFlags</a></div><div class="ttdeci">virtual uint32_t getFlags() const </div><div class="ttdoc">Returns the flags for this section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1029</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_jump_command_html_ab9c0d8bcb7cce182c9e7b2edeafbc188"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#ab9c0d8bcb7cce182c9e7b2edeafbc188">elftosb::EncoreBootImage::JumpCommand::m_argument</a></div><div class="ttdeci">uint32_t m_argument</div><div class="ttdoc">Sole argument to pass to code. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:879</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html">elftosb::EncoreBootImage::BootCommand</a></div><div class="ttdoc">Abstract base class for all bootloader commands. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:386</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_program_command_html_a659bc97136ab1e28d5514c5321985676"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a659bc97136ab1e28d5514c5321985676">elftosb::EncoreBootImage::ProgramCommand::m_memSpace</a></div><div class="ttdeci">uint32_t m_memSpace</div><div class="ttdoc">ID of memory space, e.g. 1=IFR0. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:826</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a322b233cfa40e2e7f074d006ef2d83a3a35a8c8a5b113b3320c2405026d77d534"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a322b233cfa40e2e7f074d006ef2d83a3a35a8c8a5b113b3320c2405026d77d534">elftosb::EncoreBootImage::ROM_VERBOSE_PROGRESS</a></div><div class="ttdoc">Progress reports are verbose. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:108</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a50defdef155d148db068e295150e17df"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a50defdef155d148db068e295150e17df">elftosb::EncoreBootImage::const_key_iterator_t</a></div><div class="ttdeci">key_list_t::const_iterator const_key_iterator_t</div><div class="ttdoc">Const iterator over KEKs. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1191</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a44933f9601e8eef2a81c3e2e751dcf49"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a44933f9601e8eef2a81c3e2e751dcf49">elftosb::EncoreBootImage::boot_image_header_t::m_productVersion</a></div><div class="ttdeci">version_t m_productVersion</div><div class="ttdoc">Product version. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:177</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_jump_command_html_a8cf8755af3ae9d09a7124b66e0b052ed"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a8cf8755af3ae9d09a7124b66e0b052ed">elftosb::EncoreBootImage::JumpCommand::m_ivtSize</a></div><div class="ttdeci">uint32_t m_ivtSize</div><div class="ttdoc">Whether this jump call has an initial stack pointer set. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:884</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_load_command_html_a31a6ed49c23e5399d7f3693e8e741329"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a31a6ed49c23e5399d7f3693e8e741329">elftosb::EncoreBootImage::LoadCommand::m_loadDCD</a></div><div class="ttdeci">bool m_loadDCD</div><div class="ttdoc">Whether to execute the DCD after loading. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:608</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_nop_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_nop_command.html">elftosb::EncoreBootImage::NopCommand</a></div><div class="ttdoc">No operation bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:480</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a7e56c9f17b7334a29159ed999894db0d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a7e56c9f17b7334a29159ed999894db0d">elftosb::EncoreBootImage::dek_dictionary_entry_t::m_mac</a></div><div class="ttdeci">cipher_block_t m_mac</div><div class="ttdoc">CBC-MAC of the header. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:189</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_a7c7650c56b957ed7d8ab60d937679cb3"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#a7c7650c56b957ed7d8ab60d937679cb3">elftosb::EncoreBootImage::Section::getImage</a></div><div class="ttdeci">EncoreBootImage * getImage() const </div><div class="ttdoc">Returns a pointer to the image that this section belongs to. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1039</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ac9bb85f37a25381b15a7e450921e38b8ad76d5ef3c054c23e02c62767d64d2591"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ac9bb85f37a25381b15a7e450921e38b8ad76d5ef3c054c23e02c62767d64d2591">elftosb::EncoreBootImage::ROM_LAST_TAG</a></div><div class="ttdoc">This tag command is the last one in the image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:280</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_tag_command_html_a08d9fb7c9a5b9296e164c51d99166e4e"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#a08d9fb7c9a5b9296e164c51d99166e4e">elftosb::EncoreBootImage::TagCommand::m_sectionIdentifier</a></div><div class="ttdeci">uint32_t m_sectionIdentifier</div><div class="ttdoc">Unique identifier for the section containing this command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:542</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_a26b41c16bb8b01bb7b815107e9c91290"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#a26b41c16bb8b01bb7b815107e9c91290">elftosb::EncoreBootImage::Section::m_leaveUnencrypted</a></div><div class="ttdeci">bool m_leaveUnencrypted</div><div class="ttdoc">Set to true to prevent this section from being encrypted. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1066</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a8adbd92461de5570ce43a8ae7fb35dfd"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a8adbd92461de5570ce43a8ae7fb35dfd">elftosb::EncoreBootImage::boot_image_header_t::m_padding0</a></div><div class="ttdeci">uint8_t m_padding0[2]</div><div class="ttdoc">Padding to align m_timestamp to long word. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:173</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a1ec985e228a39441dc3f55486ac2b3f3ad59b7b1d4bdd58fc343567f53f5785f4"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a1ec985e228a39441dc3f55486ac2b3f3ad59b7b1d4bdd58fc343567f53f5785f4">elftosb::EncoreBootImage::ROM_ERASE_ALL_UNSECURE_MASK</a></div><div class="ttdoc">Erase all unsecure (available on some Kinetis parts). </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:322</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_section_html_a446539442bb8d25ade8c9488c371535c"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a446539442bb8d25ade8c9488c371535c">elftosb::EncoreBootImage::BootSection::BootSection</a></div><div class="ttdeci">BootSection(uint32_t identifier)</div><div class="ttdoc">Constructor taking the unique identifier for this section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1087</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ab26b61b6441c5467c6d4cddb1ff76690a94aa6b74f170c47cae4cf0b3b9c81994"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a94aa6b74f170c47cae4cf0b3b9c81994">elftosb::EncoreBootImage::ROM_SECTION_BOOTABLE</a></div><div class="ttdoc">The section contains bootloader commands. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:202</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_section_html_a6cfd5ea24112c0d07f690613e1470b17"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a6cfd5ea24112c0d07f690613e1470b17">elftosb::EncoreBootImage::BootSection::m_commands</a></div><div class="ttdeci">command_list_t m_commands</div><div class="ttdoc">Commands held in this section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1132</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddea4123c44ce1b76a8b2b4897e212f462b8"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea4123c44ce1b76a8b2b4897e212f462b8">elftosb::EncoreBootImage::ROM_MODE_CMD</a></div><div class="ttdoc">Change boot mode command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:270</div></div>
<div class="ttc" id="class_a_e_s_key_html"><div class="ttname"><a href="class_a_e_s_key.html">AESKey&lt; 128 &gt;</a></div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_acb71b389067451ed4fe020c431b94262"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#acb71b389067451ed4fe020c431b94262">elftosb::EncoreBootImage::debugPrint</a></div><div class="ttdeci">virtual void debugPrint() const </div><div class="ttdoc">Print out a string representation of the object. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:513</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_acdca7fd3840a90881556c6adbe74965a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#acdca7fd3840a90881556c6adbe74965a">elftosb::EncoreBootImage::boot_image_header_t::m_keyCount</a></div><div class="ttdeci">uint16_t m_keyCount</div><div class="ttdoc">Number of entries in DEK dictionary. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:168</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_ad66237e9ffe5fe72ba289394621739f2"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#ad66237e9ffe5fe72ba289394621739f2">elftosb::EncoreBootImage::Section::getLeaveUnencrypted</a></div><div class="ttdeci">bool getLeaveUnencrypted() const </div><div class="ttdoc">Returns true if the section will remain unencrypted. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1058</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_a5d79f9d31b43b2cc532f9b3e756c5ce0"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#a5d79f9d31b43b2cc532f9b3e756c5ce0">elftosb::EncoreBootImage::Section::m_flags</a></div><div class="ttdeci">uint32_t m_flags</div><div class="ttdoc">Section flags set by the user. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1065</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a0f837b7d487968fc7a45cd333ad8ddc8afa0a272c210488a4842caca93f3c6a1b"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a0f837b7d487968fc7a45cd333ad8ddc8afa0a272c210488a4842caca93f3c6a1b">elftosb::EncoreBootImage::ROM_MEM_CTRL_SHIFT</a></div><div class="ttdoc">Bit position of mem controller ID. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:308</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_section_html_a4cee33a70a372af6020121e90069debd"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a4cee33a70a372af6020121e90069debd">elftosb::EncoreBootImage::BootSection::BootSection</a></div><div class="ttdeci">BootSection()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1081</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a5ce1eb45afceb8587042380ae050f63a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a5ce1eb45afceb8587042380ae050f63a">elftosb::EncoreBootImage::addSection</a></div><div class="ttdeci">void addSection(Section *newSection)</div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:43</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddea231273ec046a1a6c72b79e9211ada60c"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea231273ec046a1a6c72b79e9211ada60c">elftosb::EncoreBootImage::ROM_MEM_ENABLE_CMD</a></div><div class="ttdoc">Memory Enable command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:273</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_section_html_a53165656e3f869597464f208cc50cc17"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_section.html#a53165656e3f869597464f208cc50cc17">elftosb::EncoreBootImage::Section::Section</a></div><div class="ttdeci">Section()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:993</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_load_command_html_ad459f4aa4005ddf8fc20475f48792bac"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#ad459f4aa4005ddf8fc20475f48792bac">elftosb::EncoreBootImage::LoadCommand::m_padCount</a></div><div class="ttdeci">unsigned m_padCount</div><div class="ttdoc">Number of pad bytes. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:605</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_structelftosb_1_1_encore_boot_image_1_1section__table__t"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1section__table__t">elftosb::EncoreBootImage::section_table_t</a></div><div class="ttdoc">An index of all sections within the boot image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:235</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_program_command_html_a540e92d895f9a5447cca6ab24fa64ff7"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_program_command.html#a540e92d895f9a5447cca6ab24fa64ff7">elftosb::EncoreBootImage::ProgramCommand::m_dataWord1</a></div><div class="ttdeci">uint32_t m_dataWord1</div><div class="ttdoc">First 4 bytes to write. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:824</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a085b76c76f4df91c5328e2d4a0f30705"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a085b76c76f4df91c5328e2d4a0f30705">elftosb::EncoreBootImage::section_iterator_t</a></div><div class="ttdeci">section_list_t::iterator section_iterator_t</div><div class="ttdoc">Iterator over sections. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1186</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a62d2bf49ae747642b23e701d3f241573a4f26730cb8c3c5d39acf4c13cd04547f"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a62d2bf49ae747642b23e701d3f241573a4f26730cb8c3c5d39acf4c13cd04547f">elftosb::EncoreBootImage::ROM_MEM_SPACE_MASK</a></div><div class="ttdoc">Bit mask for mem space ID. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:314</div></div>
<div class="ttc" id="classelftosb_1_1_boot_image_html"><div class="ttname"><a href="classelftosb_1_1_boot_image.html">elftosb::BootImage</a></div><div class="ttdoc">Abstract base class for all boot image format classes. </div><div class="ttdef"><b>Definition:</b> BootImage.h:25</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_command_html_a46b3519a49537325f27f3ec556ed176d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_command.html#a46b3519a49537325f27f3ec556ed176d">elftosb::EncoreBootImage::BootCommand::getDataBlocks</a></div><div class="ttdeci">virtual unsigned getDataBlocks(unsigned offset, unsigned maxCount, cipher_block_t *data)</div><div class="ttdoc">Returns the contents of up to maxCount data blocks. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:459</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_fill_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html">elftosb::EncoreBootImage::FillCommand</a></div><div class="ttdoc">Pattern fill bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:617</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_mode_command_html_ab73af686e9b7abd2f967943b5f0a6e4b"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html#ab73af686e9b7abd2f967943b5f0a6e4b">elftosb::EncoreBootImage::ModeCommand::m_mode</a></div><div class="ttdeci">uint32_t m_mode</div><div class="ttdoc">New boot mode. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:694</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_program_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_program_command.html">elftosb::EncoreBootImage::ProgramCommand</a></div><div class="ttdoc">Program persistent bits bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:763</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ab1f2fe1d089e0f9c03a0d171288dd82b"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ab1f2fe1d089e0f9c03a0d171288dd82b">elftosb::EncoreBootImage::section_header_t::m_length</a></div><div class="ttdeci">uint32_t m_length</div><div class="ttdoc">Size of section data in blocks. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:213</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_load_command_html_afd6f7add50215ae533b5e91b2684237d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#afd6f7add50215ae533b5e91b2684237d">elftosb::EncoreBootImage::LoadCommand::m_data</a></div><div class="ttdeci">smart_array_ptr&lt; uint8_t &gt; m_data</div><div class="ttdoc">Pointer to data to load. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:603</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ac899003d6585e7dad5be1d4c0b2fb60ea1ecdb39f167619a04751f3110cb6d52a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ac899003d6585e7dad5be1d4c0b2fb60ea1ecdb39f167619a04751f3110cb6d52a">elftosb::EncoreBootImage::ROM_JUMP_SP_MASK</a></div><div class="ttdoc">Initial stack pointer is specified for jump command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:301</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ade1b69371717ca2cb04fc525eadec849"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ade1b69371717ca2cb04fc525eadec849">elftosb::EncoreBootImage::boot_image_header_t::m_flags</a></div><div class="ttdeci">uint16_t m_flags</div><div class="ttdoc">Flags or options associated with the entire image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:164</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_fill_command_html_ac1705dd65bd2028d65803472b5964f18"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_fill_command.html#ac1705dd65bd2028d65803472b5964f18">elftosb::EncoreBootImage::FillCommand::m_address</a></div><div class="ttdeci">uint32_t m_address</div><div class="ttdoc">Fill start address. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:655</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ab26b61b6441c5467c6d4cddb1ff76690a576b9de05acd56d12c6171b0ad67353f"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ab26b61b6441c5467c6d4cddb1ff76690a576b9de05acd56d12c6171b0ad67353f">elftosb::EncoreBootImage::ROM_SECTION_CLEARTEXT</a></div><div class="ttdoc">The section is unencrypted. Applies only if the rest of the boot image is encrypted. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:203</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_jump_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html">elftosb::EncoreBootImage::JumpCommand</a></div><div class="ttdoc">Jump to address bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:832</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_af9059a750946546a580a84fc94362209"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#af9059a750946546a580a84fc94362209">elftosb::EncoreBootImage::getTimestamp</a></div><div class="ttdeci">uint64_t getTimestamp()</div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:394</div></div>
<div class="ttc" id="structelftosb_1_1version__t_html"><div class="ttname"><a href="structelftosb_1_1version__t.html">elftosb::version_t</a></div><div class="ttdoc">Same version struct used for 3600 boot image. </div><div class="ttdef"><b>Definition:</b> Version.h:16</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_data_section_html_a4187d6f79a268d40f24aa5dd77009e29"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a4187d6f79a268d40f24aa5dd77009e29">elftosb::EncoreBootImage::DataSection::m_data</a></div><div class="ttdeci">smart_array_ptr&lt; uint8_t &gt; m_data</div><div class="ttdoc">The section&amp;#39;s contents. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1180</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_reset_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_reset_command.html">elftosb::EncoreBootImage::ResetCommand</a></div><div class="ttdoc">Reset target bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:908</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_nop_command_html_a7f9734716e07d3ad7da39ca1549c0eb1"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_nop_command.html#a7f9734716e07d3ad7da39ca1549c0eb1">elftosb::EncoreBootImage::NopCommand::NopCommand</a></div><div class="ttdeci">NopCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:484</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_jump_command_html_af366b41f556d6b574292563441c7ee70"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#af366b41f556d6b574292563441c7ee70">elftosb::EncoreBootImage::JumpCommand::JumpCommand</a></div><div class="ttdeci">JumpCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:836</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_call_command_html_a3b487e8447d34c13be5305044c1eb735"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_call_command.html#a3b487e8447d34c13be5305044c1eb735">elftosb::EncoreBootImage::CallCommand::CallCommand</a></div><div class="ttdeci">CallCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:894</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_load_command_html"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_load_command.html">elftosb::EncoreBootImage::LoadCommand</a></div><div class="ttdoc">Load data bootloader command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:551</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aee40ec0ce2885c29f7fbc8f17d1e51ca"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aee40ec0ce2885c29f7fbc8f17d1e51ca">elftosb::EncoreBootImage::boot_image_header_t::m_signature2</a></div><div class="ttdeci">uint8_t m_signature2[4]</div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:174</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_tag_command_html_af50ce48e88062d286de50021558f7456"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_tag_command.html#af50ce48e88062d286de50021558f7456">elftosb::EncoreBootImage::TagCommand::m_sectionFlags</a></div><div class="ttdeci">uint32_t m_sectionFlags</div><div class="ttdoc">Flags pertaining to this section. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:544</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_boot_section_html_a9d580f54378feeab1d203e7ab8d9df9d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_boot_section.html#a9d580f54378feeab1d203e7ab8d9df9d">elftosb::EncoreBootImage::BootSection::getCommandCount</a></div><div class="ttdeci">unsigned getCommandCount() const </div><div class="ttdoc">Returns the number of commands in this section, excluding the tag command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1112</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_call_command_html_ae6d8904db6b186435c5c35f6380ed85e"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_call_command.html#ae6d8904db6b186435c5c35f6380ed85e">elftosb::EncoreBootImage::CallCommand::getTag</a></div><div class="ttdeci">virtual uint8_t getTag() const </div><div class="ttdoc">Returns the tag value for this command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:900</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_load_command_html_a430d2e2d76b57ea6ae8e2e6807d05702"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_load_command.html#a430d2e2d76b57ea6ae8e2e6807d05702">elftosb::EncoreBootImage::LoadCommand::m_address</a></div><div class="ttdeci">uint32_t m_address</div><div class="ttdoc">Address to which data will be loaded. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:607</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a1f1e506925fb4e1b56a921b8681dcdfc"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a1f1e506925fb4e1b56a921b8681dcdfc">elftosb::EncoreBootImage::boot_command_t::m_flags</a></div><div class="ttdeci">uint16_t m_flags</div><div class="ttdoc">Flags for this command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:253</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ac62ee84484f039c11796bb90f49f4c61"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ac62ee84484f039c11796bb90f49f4c61">elftosb::EncoreBootImage::section_header_t::m_offset</a></div><div class="ttdeci">uint32_t m_offset</div><div class="ttdoc">Offset to section data from start of image in blocks. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:212</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_structelftosb_1_1_encore_boot_image_1_1boot__image__header__t"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#structelftosb_1_1_encore_boot_image_1_1boot__image__header__t">elftosb::EncoreBootImage::boot_image_header_t</a></div><div class="ttdoc">Header for the entire boot image. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:150</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aa468d250328b0e4db96da7cc872aa2db"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aa468d250328b0e4db96da7cc872aa2db">elftosb::EncoreBootImage::getFileExtension</a></div><div class="ttdeci">virtual std::string getFileExtension() const </div><div class="ttdoc">Returns the preferred &quot;.sb&quot; extension for Encore boot images. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1244</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ae8f073b4fe340ad0864e088746375305"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ae8f073b4fe340ad0864e088746375305">elftosb::EncoreBootImage::writeToStream</a></div><div class="ttdeci">virtual void writeToStream(std::ostream &amp;stream)</div><div class="ttdoc">Write the boot image to an output stream. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:84</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a03fedc91e72a5de33eb085fcf9633355"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a03fedc91e72a5de33eb085fcf9633355">elftosb::EncoreBootImage::boot_command_t::m_tag</a></div><div class="ttdeci">uint8_t m_tag</div><div class="ttdoc">Tag telling which command this is. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:252</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aa48307f8a58d0d01b1fb7dbfbcc38ace"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aa48307f8a58d0d01b1fb7dbfbcc38ace">elftosb::EncoreBootImage::boot_command_t::m_data</a></div><div class="ttdeci">uint32_t m_data</div><div class="ttdoc">Additional data used by certain commands. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:256</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aa4fd2b9c679938ec3e189352f65b362d"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aa4fd2b9c679938ec3e189352f65b362d">elftosb::EncoreBootImage::findFirstBootableSection</a></div><div class="ttdeci">Section * findFirstBootableSection()</div><div class="ttdef"><b>Definition:</b> EncoreBootImage.cpp:410</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator_html_a7a0b3fc7d51d41d38b0c30da233b4fa4"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_cipher_block_generator.html#a7a0b3fc7d51d41d38b0c30da233b4fa4">elftosb::EncoreBootImage::CipherBlockGenerator::getBlocks</a></div><div class="ttdeci">virtual unsigned getBlocks(unsigned offset, unsigned maxCount, cipher_block_t *data)</div><div class="ttdoc">Returns the contents of up to maxCount cipher blocks. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:376</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_mode_command_html_a5a595dde0f2e1ebc7a7ca2c3e578a75f"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_mode_command.html#a5a595dde0f2e1ebc7a7ca2c3e578a75f">elftosb::EncoreBootImage::ModeCommand::ModeCommand</a></div><div class="ttdeci">ModeCommand()</div><div class="ttdoc">Default constructor. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:667</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_jump_command_html_a42c31351f5eb7195dda41e8ab1f874a2"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_jump_command.html#a42c31351f5eb7195dda41e8ab1f874a2">elftosb::EncoreBootImage::JumpCommand::m_isHAB</a></div><div class="ttdeci">bool m_isHAB</div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:881</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a4e761570f44928f4e9917c05765bbb48"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a4e761570f44928f4e9917c05765bbb48">elftosb::EncoreBootImage::boot_image_header_t::m_sectionHeaderSize</a></div><div class="ttdeci">uint16_t m_sectionHeaderSize</div><div class="ttdoc">Size in blocks of a section header. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:172</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_afb96656be23af34be4b39d8180896933ab977279a608b195d009d18365cae1b6f"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#afb96656be23af34be4b39d8180896933ab977279a608b195d009d18365cae1b6f">elftosb::EncoreBootImage::ROM_LOAD_DCD</a></div><div class="ttdoc">Execute the DCD after loading completes. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:286</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a373ff82c05565768a7d1d14d558d7f3da82f01c806447b217d0947e64ec24db42"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a373ff82c05565768a7d1d14d558d7f3da82f01c806447b217d0947e64ec24db42">elftosb::EncoreBootImage::ROM_MEM_ID_QSPI</a></div><div class="ttdoc">External QuadSpi controller. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:334</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_ac74a1d4c2ab0ff4f659cad67d4a703e8"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#ac74a1d4c2ab0ff4f659cad67d4a703e8">elftosb::EncoreBootImage::boot_image_header_t::m_headerBlocks</a></div><div class="ttdeci">uint16_t m_headerBlocks</div><div class="ttdoc">Size of this header, including this size word, in blocks. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:170</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a0a63d907779378372cc48443d0263711"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a0a63d907779378372cc48443d0263711">elftosb::EncoreBootImage::boot_image_header_t::m_imageBlocks</a></div><div class="ttdeci">uint32_t m_imageBlocks</div><div class="ttdoc">Size of entire image in blocks. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:165</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a923b8c5725f62f85c6a557e437b9699da91f94b3db205d7c04eface71df2bf05a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a923b8c5725f62f85c6a557e437b9699da91f94b3db205d7c04eface71df2bf05a">elftosb::EncoreBootImage::ROM_BOOT_IMAGE_MINOR_VERSION</a></div><div class="ttdoc">Current boot image minor version. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:118</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaa162711561c4bf4bfa339ecc5f51cdd"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaa162711561c4bf4bfa339ecc5f51cdd">elftosb::EncoreBootImage::boot_command_t::m_address</a></div><div class="ttdeci">uint32_t m_address</div><div class="ttdoc">Target address. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:254</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_1_1_data_section_html_a5c84fd1c529d7f4730a35eb9c58eb584"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image_1_1_data_section.html#a5c84fd1c529d7f4730a35eb9c58eb584">elftosb::EncoreBootImage::DataSection::m_length</a></div><div class="ttdeci">unsigned m_length</div><div class="ttdoc">Number of bytes of data. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:1181</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a43422e088692b0eccc8922873724d03a"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a43422e088692b0eccc8922873724d03a">elftosb::EncoreBootImage::section_header_t::m_flags</a></div><div class="ttdeci">uint32_t m_flags</div><div class="ttdoc">Section flags. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:214</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a586a13047317d32a4e6b4f3f8bd49a88"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a586a13047317d32a4e6b4f3f8bd49a88">elftosb::EncoreBootImage::boot_image_header_t::m_timestamp</a></div><div class="ttdeci">uint64_t m_timestamp</div><div class="ttdoc">Timestamp when image was generated in microseconds since 1-1-2000. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:176</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_affb0bf335a8451706293d94b51946e11"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#affb0bf335a8451706293d94b51946e11">elftosb::EncoreBootImage::boot_command_t::m_checksum</a></div><div class="ttdeci">uint8_t m_checksum</div><div class="ttdoc">Simple checksum over other command fields. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:251</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_aaf67c041c6d0586c79b85e6556f97ddea3dbce29fdf6055d2f3e21e9360ab921c"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#aaf67c041c6d0586c79b85e6556f97ddea3dbce29fdf6055d2f3e21e9360ab921c">elftosb::EncoreBootImage::ROM_NOP_CMD</a></div><div class="ttdoc">A no-op command. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:264</div></div>
<div class="ttc" id="classelftosb_1_1_encore_boot_image_html_a0f837b7d487968fc7a45cd333ad8ddc8ae389e06924f01e12dbd93d2b36a533c3"><div class="ttname"><a href="classelftosb_1_1_encore_boot_image.html#a0f837b7d487968fc7a45cd333ad8ddc8ae389e06924f01e12dbd93d2b36a533c3">elftosb::EncoreBootImage::ROM_MEM_CTRL_MASK</a></div><div class="ttdoc">Bit mask for mem controller ID. </div><div class="ttdef"><b>Definition:</b> EncoreBootImage.h:307</div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_96c2f84c885cff71a930b6845f88cdd3.html">elftosb</a></li><li class="navelem"><a class="el" href="dir_c476059e18722267e10e2fb2cca6f785.html">common</a></li><li class="navelem"><b>EncoreBootImage.h</b></li>
    <li class="footer">Generated on Mon Mar 7 2016 16:49:50 for Kinetis Bootloader Host by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>
